Linux 系统基本操作 - 4


文件及目录操作

cd pwd mkdir rmdir

tree 打印文件目录树
mkdir -p -m 自动创建路径目录,设置权限
pwd 访问链接目录看的是逻辑地址,想要看实际物理地址 pwd -P
ls -d 可看链接文件指向的位置
ln 不可为目录创建硬链接,ls -s 可为目录创建软链接
rm -r link 注意对目录删除时,-r 参数注意删除
cp -i 复制时目标文件存在提示
basename 取绝对路径末尾,dirname 取绝对路径目录
cat 正向读 tac 反向读文件
nl 显示行号读文件
more 一页页读文件只能往下 less 可上下翻看文件
head 看文件前几行 tail 看文件末几行
wc 计数
diff 对比文件

sshfs 挂载远程目录

文件三时间 atime 访问时间 ctime 权限修改时间 mtime 修改时间
ls --time=atime
touch -a <file> 创建空文件或修改文件时间
chattr 操作文件隐藏属性 +-= Sci 同步写入,只能增加文件内容,不能删除增加链接等
lsattr 查看文件隐藏属性

文件的特殊权限,主组执行权限 x 可执行升格为 s,他可升格为 t
u + s 用户在执行该文件时获取文件所有者的权限
g + s 用户在该目录下,有效组变为目录所属组
o + t 时,文件只能被所属主删除

whicih 查找 PATH 下执行文件
whereis 除了可执行文件 还能找到相关文件
locate 模糊系统中所有相关文件,需是之前一段时间,配合 updatedb 更新数据库
find 高级查找在目录下找文件

# 查找修改时间在一天只能用户为 xxx 的文件
find /home/ -mtime -1 -user xxx > 1.log 2>&1 #均重定向到一个文件中
find /home/ \( -name ".c" -or -name ".h" \) -size 0 #查找 .c 或 .h 文件 大小为 0 的文件
# 杀死该用户下所有进程
find /proc/ -user test1 2>/dev/null | cut -d '/' -f 3 | uniq | xarg rm -rf
# 统计文件行数
find . -name ".c" -exec ls {} \; | grep -v "source" | xargs cat | wc -l

tar 归档和压缩文件 -czvf 压缩文件 -xzvf 解压文件

awk 文本数据处理

方便的对有一定格式的文本进行处理

awk [-Ffv] `BEGIN { command } pattern { commands } END { commands }` file
# 统计登录用户登录时间
last | grep -v "^$" | grep -v "wtmp" | grep -v "still" | head -5 | 
awk -v user=`whoami` 'BEGIN {} { if ($1 == user) {print $10} } END {}' | cut -c 2-6 | 
awk -F: -v hour=0 -v min=0 '{hour+=$1;min+=$2} END {if (min >= 60) {hour+=(min/60); min=min%10} printf("%d hours, %s mins", hour, min)}'

数据提取操作

tr字符集替换 -c内容外替换 -d 字符集删除(有范围),-s 去除重复压缩
cut -d c -f num <file> 以字符切割,取第 num 个部分
grep -v 反向匹配未找到的 -c 统计搜索到的次数 -w 只匹配单词

# 统计词频
grep -R keyword . -n -c | awk -F: -v sum=0 '{sum += $2} END{print sum}'

sort 排序 -b 忽略空格 -n 纯数字排序 -M 日期排序 -r 反向排序 -t : -k 3 分隔符以区间排序
wc 统计字数 -l 统计行 -w 统计字 -m 统计字符
unique 去除重复 -i 忽略大小写 -c 计数
tee 输出额外重导向
split 切分数据 -b 以 size 大小切分 l 以行切分
xargs 参数代换 -n num 参数个数 -p 执行前询问

# 替换求和
echo "1 2 3 4 5 6 7 8 t ./8" | tr -s -c "0-9" " " | echo $[`tr " " "+"`]
echo $PATH | tr ":" "\n" | tail -n 1
# 以分割后第三位排序
cat /etc/passwd | sort -k : -t 3 -n -r
# 输出用户 uid gid 信息
cat /ect/passwd | head -n 20 | tail -n 10 | cut -d : -f 1 | xargs -esync -n 1 id

sed -i s@pattern1@pattern2@g <file> 全局替换
sed /pattern2/d <file> 全局删除
sed 6,8d <file> 删掉 6-8行
vim 中操作类似 :%s/abc/123/g

软连接 硬链接

inode 存放描述文件的信息 block 存储真实的文件
硬链接 指向同一个 inode 可通过 ls -ali 查看相关 inode 连接信息和数量
软连接 类似于快捷方式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值