1、目录文件操作
-
mkdir:创建目录。
一般用法: mkdir path
常用的选项 : -p mkdir /a/b/c 如果父目录不存在则创建父目录
- cp:复制文件,如果文件存在则覆盖。
一般用法:cp file1 path
常用的选项:-r cp path1 path2 复制整个目录path1 到目录path2中
- mv:移动文件或目录。
一般用法:mv file1 path, mv path1 path2
- rm:删除文件或者整个目录。
一般用法:删除文件,rm file
删除整个目录,rm -fr path
- cd:切换目录。
一般用法:cd path,切换到path目录
常用的操作: cd ~ 切换到home目录, cd .. 切换到上层目录。
- touch:创建文件。
一般用法: touch file, 创建空文件file
常用的操作:清空文件 true > file
- ls:查看指定目录下文件的信息。
一般用法:ls path , 查看path下文件名称, ls 不加目录默认是查看 当前目录下的文件信息
常用的选项: -l , ls -l 查看当前目录下 详细文件列表
-h ,可读性的显示文件的大小, -t 按时间排序, -a 显示目录下所有的文件包括隐藏文件(以.开头的文件)
例如,常用组合, ls -lth path
- pwd: 查看当前位置的绝对路径
一般用法:pwd
- find:查找文件
常用操作:find / -name filename -print
可以在指定目录下通过文件名,文件访问时间,文件的大小,文件所有者 等信息 查找指定的文件,
详细的操作 可以通过man手册查看。
2、文本处理
- cat:让文件输出在屏幕上
一般用法:cat file, 让文件file输出在屏幕上, 如果文件过大会疯狂输出在屏幕上,这时可以多次按
ctrl+c
终止。
- more:让文件一次一屏输出
一般用法:more file, 使file一次一屏输出,可以按enter键持续输出。
- less:与more功能类似
less可以在输入/后进入查找模式,然后按
n
(N)向下(上)查找。有许多操作,都和vim类似
- tail:查看文件的最后n行内容
一般用法:tail file ,查看文件最后10行的内容。
常用用法:tail -n 22 file, 查看文件最后22行的内容。
tail -f file, 动态持续输出文件后面的内容,适合动态查看文件的内容不断增加。
- head:查看文件前面的内容
一般用法:head file, 查看文件开始10行的内容。
常用用法:head -n 22 file , 查看文件开始22行的内容。
- sort,uniq,wc:通常是组合使用
sort:输入的文件按行字典排序,
uniq:去重操作
wc :统计输入文件的行数
cat file | sort | uniq -c, 对文件file 首先排序然后去重,最后让结果输出屏幕。
- grep:对内容进行过滤
常用举例:grep "tags" ./vimrc --color=auto -r -n, 在文件./vimrc 中搜索tags内容,高亮显示,显示行号,如果是在目录下搜索可以递归搜索。
--color=auto,高亮显示搜索的文件信息
-n ,显示匹配内容所在的行号
-r , 递归目录搜索
也可以正则匹配搜素详见 man手册
- awk:按行处理文本信息
常用举例:cat file | awk -F ':' 'BEGIN{i++;} {print $1;} END{print i;}'
统计文件file中每行以:分割的 第一个字段并打印出来。
-F:后面定义每行的分隔符
awk功能很强大,可以处理很复杂的操作。
- diff:比较两个文件是否有差异
- sed:按行处理文件内容,输出到屏幕
- a :新增, a 的后面可以接字串,而这些字串会在新的一行出现目前的下一行
- c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行
- d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚
- i :插入, i 的后面可以接字串,而这些字串会在新的一行出现目前的上一行
- p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
- s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!
- tar:常用的解压缩命令
常用举例:tar -cvfz aechive.tar.gz dir/ , 创建压缩包
tar -zxvf aechive.tar.gz, 解压缩包
常用的选项 : -C, 解压到指定的目录,,默认不指定的话解压到当前目录(tar -zxvf aechive.tar.gz -C dir/)
3、其他常用操作
- chmod:改变文件权限
常用举例:chmod a+x a.sh, 给文件a.sh增加可执行权限
- mount,umount:挂载和卸载命令
mount 可以挂载一些u盘,硬盘等。
mount -t vboxsf code /mnt/code, 这是我最常用的操作, 在虚拟机挂载宿主机共享的文件夹code在 虚拟机/mnt/code上
umount /mnt/code 卸载指定目录挂载的设备文件
- uname -a : 输出当前系统的内核信息
- ps:查看进程、线程的相关信息
常用举例:ps -ef | grep "sshd", 查看匹配进程名称sshd的进程信息。
ps -T -p <pid>, 查看进程号位pid的相关线程信息。
- top: 可以查看cpu、内存,进程等等相关的信息
常用举例: top -d 10, 10s刷新一次
top -H -p <pid> , 查看进程号为pid的相关线程信息。
- free:查看内存相关信息
- df:查看磁盘信息
常用举例:df -h , 可读性的信息磁盘使用信息(主要是磁盘大小)
- du:显示目录的大小信息
常用举例:du -h /dir
- ifconfig: 查看ip等配置信息
- ping: 检测网络
- netstat:查看网络连接信息
- 列出当前登录本系统的用户 who
- 列出本系统(linux7)的开机/重启时间
who -b