Linux命令行以及Shell脚本 - 基础篇

Linux命令行
基本常用命令
0. man
查看其它命令的具体用法,不懂问他。
1. pwd
显示当前目录
2. ls
列出目录的文件/目录
-a
显示隐藏文件/目录-F
标示文件类型,目录后面跟/,可执行文件后面跟*-R
递归显示文件-l
显示更多信息,除了文件/目录名,还会在一行展示文件/目录的其他信息
文件类型标示:目录(d),文件(-),字符型文件©,块设备(b)
- 过滤文件
ls 后面跟需要过滤的字符即可筛选出对应文件
比如ls my_file
,并且可以使用模式匹配。
问号(?)代表一个字符
星号(*)代表0个或多个字符
3. touch
创建文件:touch file_name
改变文件的修改时间:touch exist_file
4. cp
复制文件:cp source destination
这里source和destination都是文件名,也就是说复制可以更改文件名
复制的文件就像新文件一样,有新的修改时间
也可以复制到目录:cp source dir
并且需要复制的文件名可以用通配符来匹配
参数:
-i
询问是否覆盖-R
递归复制整个目录
5. mv
重命名:mv file_name new_name
移动文件:mv file_name /new/path/
移动目录:mv dir_name new_dir_name
mv命令修改文件名只会修改到文件名,不会改时间戳
6. rm
删除文件:rm file_name
-i
删除前增加系统提示-f
删除文件而不要提示-r
递归删除文件夹以及所有内容
7. mkdir
创建文件夹:mkdir dir_name
创建多级文件夹:mkdir -p dir_name/dir_name
8. rmdir
删除文件夹:rmdir dir_name
// 只能删除空文件夹
9. file
查看文件类型:file file_name
10. cat
查看文件内容:cat file_name
-n
给内容加上行号-b
只给有文本的行加行号
11. more/less
查看大文件内容:more/less file_name
能够显示部分文件内容,并且能够进行翻页控制
12. tail
查看文件最后10行 tail file_name
-n
指定查看多少行,n可直接替换为行数-f
保持活动状态,显示的内容会不断更新,常用来监控日志
13. head
查看文件开头10行 head file_name
-n
指定查看多少行,n可直接替换为行数
更多命令
1. ps
探查进程:ps
2. du
// 查看当前目录下所有文件和目录的大小 du -sh *
2. sort
对输入或者文件内容进行排序
// 将当前目录下文件及目录按大小排序,同单位的情况下
du -sh * | sort -rn
Shell脚本编程
指定shell
#!/bin/bash
if-else
shell中的if-else主要是判断程序是否正常返回
如果相判断变量,需要借助test命令
test
if test condition
then
commands
fi
bash提供了另一种方式,方括号表示
if [ condition ]
then
commands
fi
该命令可以判断数值,字符串,文件。
判断数值
-eq
,-ge
,-gt
,-le
,-lt
,-ne
判断字符串
=
,!=
,<
,>
,-n
,-z
只有>
时要转义。