Linux command shell
1. pwd: 查看当前所在目录。
2. cd :用于打开一个目录。
cd /:打开根目录。
cd /bin:打开根目录下的bin 目录。
cd ..:返回上一级目录。
cd ../..: 返回上两级目录。
cd usr/local/bin: 打开usr 目录下local 目录下的 bin 目录。
cd ~: 打开用户的住目录。
3. ls :查看目录命令。
ls -a: 显示所有文件及目录,包括隐藏文件。
ls -l: 显示文件的详细列表,显示文件名、文件形态、权限、文件大小等信息。
ls -r: 将文件以字母的倒序排列显示。
ls -t: 将文件依建立的时间先后排列显示。
ls -A: 同a 但不显示 . 目录及 .. 目录。
ls -F: 在列出的文件名称后面添加一符号。表明是文件还是目录。
ls -R: 依次列出目录中的文件。
4. touch :创建一个空文件。
5. mkdir rmdir:创建和删除目录。
参数p 可以制定建立多级目录。也可以用于删除多级目录在目录是空的前提下。
6. cp :文件复制命令。
cp [参数] 源文件或目录 目标文件或目录
-a: 通常在拷贝目录时使用。它保留链接、文件属性、并拷贝目录下的所有内容。其作用等同于 dpR 参数组合。
-d: 拷贝时保留链接。这里所说的链接相当与windows 中的快捷方式。
-f: 覆盖以存在的目标文件而不给出提示。
-i: 与 f 相反,给出提示。
-p: 除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
-r: 若给出的源文件是一目录文件,此时将复制该目录下的是所有子目录和文件。
-l: 不复制文件,只是生成链接。
7. mv :文件移动和更名命令mv。
-b: 若覆盖文件,则覆盖前先备份。
-f: 如果目标文件或目录与现有的文件或目录同名,则直接覆盖已有的文件或目录。
-i: 覆盖钱先询问用户。
-S:与 -b 参数一起使用,可以指定备份文件所要附加的字尾。
-u: 在移动或文件更名时,若目标文件已存在,且其文件日期比源文件文件新,则不覆盖目标文件。
-v: 执行时显示详细信息。
-V: 与 -b 一起使用,制定备份的方法。
8. rm :删除文件爱你与目录命令。
-d: 把删除的目录的硬链接数据删除,删除该目录。
-f: 强制删除文件或目录。
-i: 删除文件或目录之前询问用户。
-r: 递归处理,将制定目录下的所有文件及子目录全部删除。
-v: 显示命令执行过程。
9. ln :创建链接命令。
-b: 覆盖目标文件之前的备份。
-d: 建立目标的硬链接。
-f: 强行建立文件或目标的链接。
-i: 覆盖已有文件之前先询问用户。
-n: 把符号链接的目的目标视为一般的文件。
-s: 对源文件建立符号链接,而非硬链接。
-S: 用 -b 参数备份目标文件。
10. wc :查看文件信息命令。
-l: 显示文件的文本行数。
-w: 显示文件的字数。
-c: 显示文件中的字符数。
11. cat :文件查看命令。
-n: 由1 开始对所有输出行进行编号。
-b: 和 -n 相似,但是对空白行不编号。
-s: 当遇到有连续两行以上的空白行,就轮换为一行。
12. head tail:查看文件视图命令。
head -n5 001.c: 查看文件的前5 行。
head 400b 001.c: 查看文件的前 400 字节。
head 4k 001.c: 查看文件的钱4KB 文件内容。
head 3m 001.c: 查看文件前3MB 文件内容。
tail 与之相反,从文件尾开始计算。
13. chmod :文件权限设置命令。
文件的三级权限:
u: 所有者。
g: 群组。
o: 除了所有者和同组用户之外的用户。
权限的权限字符表示:
r: 表好似可读取。
w: 表示可写入。
x: 表示看执行。
常用的命令参数:
-c: 若文件权限已经更改,显示其更改动作。
-f: 若文件权限无法被更改,则不显示错误信息。
-v: 显示文件变更的详细资料。
-R: 对目录下的所有文件与子目录进行相同的权限设置。
14. find :查找文件命令 find。
find 目录 文件名
15. man :系统帮助命令。
man [命令]
16. info :系统中另一个帮助文档。
man 是linux 系统的标准帮助手册,info 是自由软件的帮助手册。
内容要比 man 丰富。
17. 环境变量。
查看所有: export
查看某个: export $[环境变量名称]
设置变量: [变量名]=[值]
18. 在系统配置文件中定义环境变量。
环境变量的系统配置文件是 /etc/profile。
19. shell 的运算符。
shell 中的运算符可以实现变量的赋值、算数运算、测试、比较等功能。
在ubuntu 中可以用echo $[expression]输出一个表达式的值。
20. shell 的输入和输出。
echo $str 将结果输出到终端。
echo $str >file 将结果保存到文件中,如果没有文件会新建一个文件。如果已经有文件则会覆盖以前的文件。
>> 表示追见到现有的文件后面。
echo 输出的内容,可以有下面的格式控制字符。
\c: 末尾加上,表示这一行输出完毕后不换行。
\t: 输出一个跳格,相当与按下 “TAB” 按键。
\n: 输出一个换行。
需要注意的是,如果要输出特殊字符,必须加 -e选项,否则输出的结果中会直接输出字符。加 -n 选项可以禁止echo 输出后的换行。
21. read 命令读取信息。
如果只读入一个变量,会把键盘上输入的所有信息赋值给这个变量。按 "Enter" 键,结束输入。
如果输入多个变量,用空格键将输入的变量隔开。如果输入变量的个数多于需要读取的变量的个数,将会把剩余的变量赋值给最后一个变量。
在读取语句后面添加 <filename, 表示从文件中读取数据,并且赋值给变量。
22. 文件重定向。
command > filename 把标准输出重定向到一个文件中。
command >> filename 把标准输出以追加的方式重定向到一个文件中。
command 1 > filename 把标准输出重定向到一个文件中。
command > filename 2 > &1 把标准输出和标准错误一起重定向到一个文件中。
command 2 > filename 把标准输出的错误重定向到一个文件中。
command 2 >> filename 把标准输出以追加的方式重定向到一个文件中。
command >> filename 2 > &1 把标准输出和标准错误一起追加到一个文件中。
command < filename > filename2 把command 命令以filename 文件作为标准输入,以filename2 文件作为标准输出。
command < filename 把 command 命令以filename 文件作为标准输入。
23. 引号的使用方法。
双引号 表示引用一个字符串。字符串里不能直接使用$、引号、双引号、反斜线、反引号 这些特殊字符。
反引号 用于执行引号中的系统命令,然后及那个命令的结果返回。这个返回的结果可以赋值给一个变量。
反斜线 用于对特殊字符进行转义。
24. 测试语句
文件测试语句: 文件状态的测试指的是对文件的权限、有无、属性、类型等内容进行判断。与其他语言不同的是,test 命令的测试结果,返回0 表示测试成功。返回1 时表示测试失败。
数值测试: 数值测试是比较两个数值的大小或相等关系,相当与C 语言中的比较运算符。shell 程序中的数值测试有下面两种形式。
test 第一个操作数 数值比较符 第二个操作数
用中括号代替 test 命令。[ 第一个操作书 数值比较符 第二个操作数 ]
数值比较符号:
-eq: 两个数是否相等。
-le: 第一个数是否不大于第二个数。
-gt: 第一个数是否大于第二个数。
-ne: 两个数是否不相等。
-ge: 第一个数是否不小于第二个数。
-lt: 第一个数是否小于第二个数。