Linux命令(二)

file:查看文件类型(window是通过扩展名来识别文件类型)

-i:输出MIME类型的字符串
-b:查询结果不显示文件名
-c:显示file判断文件类型的过程
-L:查看软链接所链接文件的类型
-z:显示压缩文件的内容
-f:查看文件内容里所写的文件名的类型


cat:

1)一次性查看整个文件
2)用键盘输入创建一个新文件:cat > new_filename <<EOF
(EOF:end of file,结束键盘输入)
3)用键盘输入向现有文件追加新数据:cat >> filename << EOF
4)把多个文件内容合并到一个文件:cat file1 file2 > file3

-n/-b:显示行号,-b不给空行显示行号
-S:将多个空行合并为一个空行


cp(copy):复制文件或目录

语法:cp [option] src_file dst_file
-f:强制覆盖
-r:(recursive)递归复制
-s:不复制,做软链接
-l:为文件创建硬链接
-d:复制软链接文件(src_file)时,为目标文件或目录(dst_file)创建软链接并指向最原始的文件
-p(permission):复制文件时,保留原有属性
-b:覆盖已有文件前,进行backup,在原文件名后加上“~”
-i:(inquery)询问


mv(move):移动或重命名(当原位置和目标位置是同一目录时表现为重命名)

语法:mv [option] now_location new_location
-b:覆盖已有文件前,进行backup,在原文件名后加上“~”
-f:强制覆盖
-t:将多个文件移动到同一个目录(区别:mv -t drectory file_1 file_2 file_3


rm(remove):删除文件或目录

-f:强制删除
-i:(inquery)询问
-r:(recursive)递归删除
-v:显示执行过程
-d 允许超级用户制作目录的硬链接

注意:rm -rf /tmp/会删除包含tmp目录
rm -rf/tmp/*不会删除tmp


mkdir(make directory):创建空目录

-m:创建目录同时设置权限
-p:递归创建(如:mkdir -p a/b/c/dmkdir -p a/{b,c,d}mkdir {a,b}-{c,d}
-v:显示执行过程


tree:查看目录树

类似于ls -r
安装:yum -y install tree


tee:用于读取标准输入的数据,并将其内容输出成文件

语法:tee file << EOF


pstree:查看进程树

安装:yum -y install psmisc


more:翻页查看文本文件

使用方法:
Enter键:向下翻一行
Space键:向下翻一页
Ctrl+b:向上回翻一页
Ctrl+f:向下翻一页
=键:显示当前行号
v键:调用vi编辑器编辑
!command:在more中调用shell执行命令(!ls
[option]:
+num:从第num行显示文件


less:与more类似

使用方法:
Enter键:向下翻一行
Space键:向下翻一页
pagedown:向下翻一页
pageup:向上翻一页
上下方向键:向上/向下翻一行
/[key word]:查找关键词
n:查找下一个
N:查找上一个(与vi编辑器相同)


head:默认查看文本文件的前十行

-n:查看前n行


tail:默认查看文本文件的后十行

-n:查看后n行
-f:动态查看文本文件内容,如动态查看日志(日志更新时窗口显示也会更新)

例子:看15-20行head -20 a.txt | tail -5


locate:查找文件(模糊匹配),非实时性,根据自己的数据库查找文件(周期性更新,手动更新可用updatedb命令)

安装:yum -y install mlocate

updatedb:手动更新locate数据库

history:查看(当前用户)过去执行的命令(包括错误指令)

补充:可以查看用户home目录下的隐藏文件.bash_history中保存的历史命令

-c:清空命令历史(不清除.bash_history文件)
-d:删除指定的某一条命令(用编号删除)
-w:将命令历史保存到某个文件中

!n:执行命令历史中的第n条命令【非history参数】
!-n:执行命令历史中的倒数第n条命令
![word]:执行命令历史中最近一次以word开头的命令


clear:清屏

alias:定义命令的别名(该命令定义的别名只在当前shell执行)

语法:alias [别名]=[command]
注意[command]最好用引号括起来,如alias ll='ls -l'alias cdnet='cd /etc/sysconfig/network-scripts'

使用alias直接查看命名空间

unalias:取消命令别名

语法:unalias [别名]

永久配置别名:

  • (当前用户永久):在宿主目录中的.bashrc文件中添加alias ll='ls -l',然后执行source ~/.bashrc生效
  • (所有用户永久):在/etc/profile文件中添加alias ll='ls -l'
    然后执行source /etc/profile生效

补充:别名能够进行系统加固,如:alias rm='rm -i'
(.bashrc优先级比profile高)


tr:实现字符转换

例子:tr 'a-z' 'A-Z'cat /etc/passwd | tr 'a-z' 'A-Z'


find:查找对象所在位置

语法:find [位置] [条件1 -/o/-a 条件2.........] 其中-o表示或,-a表示与
如:find /etc/ -name ifcfg-*
find / -name *host* -a -type f -a -size +100kB


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容