一、文件和目录操作
二、查看文件内容
- cat
:正向查看文本内容, cat -n file1
(显示行号);tac file1
(反向查看)。 - head/tail
: head -n 2 file1
(查看前 2 行);tail -n +1000 file1
(从 1000 行开始显示)。 - more
:分页查看长文件,按空格翻页。 组合用法: cat filename | head -n 3000 | tail -n +1000
(显示 1000-3000 行)。
三、文件搜索
- find
:按条件搜索,常用参数:
-name
: find / -name file1
(从根目录搜文件)-user
: find / -user user1
(搜用户 user1 的文件)-size
: find /var/mail/ -size +50M -exec rm {} ;
(删除大于 50M 的文件)
whereis halt
(查二进制 / 源码位置);which halt
(查可执行文件完整路径)。四、文件权限管理
- chmod
:修改权限(r=4、w=2、x=1):
chmod ugo+rwx directory1
(所有人可读可写可执行) chmod go-rwx directory1
(取消群组和其他人权限)
chown -R user1 directory1
(递归修改目录及子文件所有者)chgrp group1 file1
(将文件改为 group1 组)五、文本处理
- grep
:筛选文本:
grep Aug /var/log/messages
(搜含 “Aug” 的行) grep ^Aug /var/log/messages
(搜以 “Aug” 开头的行) grep -R Aug /var/log/*
(递归目录搜索)
sed 's/string1/string2/g' example.txt
(替换字符串);sed '/^$/d' example.txt
(删除空白行)sort file1 file2 | uniq -d
(取两文件交集)paste -d '+' file1 file2
(合并文件,用 “+” 分隔)六、打包和压缩文件
tar | tar -jcv -f filename.tar.bz2 dir1 (bzip2 压缩);解压:tar -jxv -f filename.tar.bz2 -C /tmp (指定目录) | |
gzip/bzip2 | gzip -9 file1 bunzip2 file1.bz2 (解压 bzip2 文件) | |
zip/unzip | zip -r file1.zip dir1 unzip file1.zip (解压) |
七、系统和关机
shutdown -h now
(立即关机); shutdown -r now
(立即重启)reboot
(重启); logout
(注销)time
(测算命令执行时间)
八、进程相关命令
- ps
:查看进程:
ps aux
(显示所有进程); ps axjf
(显示进程树)
kill 3268
(终止 PID 为 3268 的进程); kill -9 3268
(强制终止)信号说明:9(SIGKILL,强制终止)、15(SIGTERM,正常终止)
killall -9 nginx
(强制杀死所有 nginx 进程)关键问题:
问:如何使用 chmod 命令修改文件权限?请举例说明。
答:chmod 通过 “用户(u)、群组(g)、其他人(o)” 三类对象,结合 “+(添加)、-(取消)” 操作,设置 “读(r=4)、写(w=2)、执行(x=1)” 权限。
示例 1:chmod ugo+rwx file1
,为所有对象添加读、写、执行权限;
示例 2:chmod go-rwx dir1
,取消群组和其他人对目录 dir1 的读、写、执行权限;
示例 3:chmod 755 script.sh
(数字法),所有者(u)有 rwx(7=4+2+1),群组和其他人(g/o)有 rx(5=4+1)。问:如何查找并终止指定名称的进程?
答:可通过 “查找进程→终止进程” 两步实现:
查找进程:使用 ps aux | grep 进程名
(如ps aux | grep nginx
),获取进程 PID;或直接用pgrep 进程名
(如pgrep nginx
)直接返回 PID。终止进程:若已知 PID,用 kill PID
(正常终止)或kill -9 PID
(强制终止);若按名称终止,用killall 进程名
(如killall -9 nginx
强制杀死所有 nginx 进程)。
问:如何使用 find 命令按条件搜索文件?请列举 3 种常见场景。
答:find 命令通过参数指定搜索条件,常见场景:
按文件名搜索: find /home -name "*.txt"
,从 /home 目录搜索所有.txt 文件;按用户搜索: find /var -user root
,搜索 /var 目录下属于 root 用户的文件;按修改时间搜索: find /usr/bin -type f -mtime -10
,搜索 /usr/bin 目录下 10 天内修改过的普通文件;按大小搜索: find /tmp -size +100M
,搜索 /tmp 目录下大于 100M 的文件。
推荐站内搜索:最好用的开发软件、免费开源系统、渗透测试工具云盘下载、最新渗透测试资料、最新黑客工具下载……
还没有评论,来说两句吧...