参考高峻峰 著 循序渐进Linux(第二版)
command [options] [arguments]
command:表示命令的名称
options:表示命令的选项
arguments:表示命令的参数
例如:
ls -a -l 或 ls -al
在shell的一个命令行中,还可以输入多个命令,用分好将各个命令分开,例如
#ls -al ; cp mylinux1.txt mylinux2.txt
也可以在多行中输入一个命令,用“”将一个命令持续到下一行
#cp -i mylinux1.txt mylinux2.txt
- shell的通配符
bash中常用的通配符有“*”,"?","[]"
"*":匹配任意一个或多个字符
“?”:匹配任意单一字符
“[]”:匹配任何包含在方括号内的单字符
#ls /dev/sda[12345] 或 #ls /dev/sda[1-5]
- shell的重定向
Linux下系统打开3个文件,即标准输入,标准输出,标准错误输出。
用户的shell将键盘设为默认的标准输入,默认的标准输出和标准错误输出为屏幕。
所谓的重定向,就是不使用系统默认的标准输入/输出而是重新指定。
1.输入重定向
操作符 “<” 和 “<<”
输入重定向用于改变命令的输入源
wc << aa(我没看懂这条命令是做什么的)
2.输出重定向
操作符“>” 和 “>>”
#ps -ef > ps.txt
这条命令将ps -ef输出的系统运行进程信息全部输入到ps.txt文件
然后通过more命令查看ps.txt文件
#more file1 file2 file3 > file
将file1 file2 file3的内容全部输出到file文件中,类似于文件内容的合并
如果在“>”后面指定的文件不存在,shell就会自动创建一个;如果文件存在,那么这个文件原有内容将被覆盖;如果不想覆盖存在的文件,可以使用">>"操作符。
#ls -la /etc/* >>/root/install.log
将/etc目录及其子目录下的所有文件信息追加到/root/install.log文件的后面,文件原来的内容仍然存在
3.错误重定向
操作符:“2>” "2>>"
tar zxvf text.tar.gz 2> error.txt
如果text.tar.gz是个损坏的压缩包,就会把错误消息输出到error.txt文件
- shell的管道
管道可以把很多命令连接起来,管道的作用就是把第一个命令的输出当作下一个命令的输入。
管道符 “|”
#ls -la /etc/* |more
- shell中的引用
shell中用于引用的字符有转义字符“”,单引号"'",双引号""""
#mv abc?* abc
? * 不在是通配符而只是字符? *
mv C:\backup backup
mv 'C:\backup' backu
如果将字符串放到一对单引号间,那么字符串中所有字符的特殊含义将被忽略
双引号的引用与单引号基本相同,但仍有一些特殊字符保留自己的特殊含义比如 “$”,""和“‘”