Linux文件基本管理bash shell对文件进行管理

=============bash shell对文件进行管理=================
创建、复制、删除、移动、查看、编辑、压缩、权限、查找

文件路径

绝对路径: 从/开头的路径 /home ~alice
相对路径: 相对于当前目录开始 . ..

. 链接到当前目录
.. 链接到上一级目录
~ 当前用户的家目录

改变目录:cd
cd 绝对路径 cd /home/alice cd ~/alice
cd 相对路径 cd ..

cd – 返回上次目录
cd 直接回家

文件的创建/复制/移动/删除

文件创建:touch

# touch file1.txt //无则创建,有则修改时间
# touch /home/file10.txt
# touch file{1..20}
# touch uplooking{a,b} //等价于touch uplookinga uplookingb
# touch -t 1501010001 2018.rmvb

创建文件名含有“-”的文件

 

方法一:touch — -a

方法二:文件名加上路径 touch ./-a

删除时候使用路径删除 rm ./-a

创建目录:mkdir

# mkdir dir1
# mkdir /home/dir2 /home/dir3
# mkdir /home/{dir4,dir5}
# mkdir -v /home/user{1..20} // v -> verbose
mkdir: 已创建目录 “/home/user1”
mkdir: 已创建目录 “/home/user2”
# mkdir -p /home/dir8/111/222 // p -> parent
# mkdir -pv /home/{yang/{dir1,111},xiaochen}

复制:cp

Usage: cp [OPTION]… [-T] SOURCE DEST
参数:
-r 递归
-f 强行
-i 覆盖提示
-v 详细显示

[root@test ~]# cp -vrf install.log /home/dir1
[root@test ~]# cp -v install.log /home/dir1/yang.txt
[root@test ~]# cp -r /etc/* /home/dir1
[root@test ~]# cp install.log /home/dir2
[root@test ~]# cp anaconda-ks.cfg !$ !$ 代表 /home/dir2
cp anaconda-ks.cfg /home/dir2
[root@test ~]# cp -r /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/passwd /etc/grub.conf /etc/hosts .

[root@uplooking ~]# cp -rv /etc /tmp (等同与 cp -irv /etc/ /tmp)
[root@uplooking ~]# \cp -rv /etc /tmp (等同与 cp -rv /etc/ /tmp)

移动/改名:mv

Usage: mv SOURCE DEST

# mv file2 /home/dir3 //将file2移动到/home/dir3里
# mv file4 file5 //将file4重命名为file5,当前位置里的移动就是重命名

删除:rm rmdir

# rm file2
# rm -rf dir1
-r 递归
-f force强制
-v 详细过程

# rm -rf file*
# rm -rf file{1..10}
# rm -rf .[!.]* //以.开头,第二个字符不能为.,后面可以任意长度字符

# rmdir /tmp/dir/ //只能删除空目录

查看文本文件内容:cat less more head tail grep

示例文件:
/etc/hosts
/etc/sysconfig/network
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/passwd
/etc/shadow
/etc/group
/etc/grub.conf
/etc/resolv.conf
/var/log/messages //系统的主日志文件

cat

-n 显示行号
-b 显示有效行
-A 包括控制字符(换行符)linux $ Windows ^M$

扩展知识:
dos2unix 将Windows格式的文件转换成Unix格式
unix2dos 将Unix格式的文件转换成Windows格式
例如
# unix2dos file1
# dos2unix file2
========================================================

less more head tail

less支持上下翻看,并且支持搜索,使用n或者是N上下切换搜索的内容
more只支持向下翻看

# head /etc/passwd //默认前10行
# head -2 /etc/passwd //查看前2行
# tail /etc/passwd //默认查看尾10行
# tail -1 /etc/passwd //查看文件最后1行
# tail -f /var/log/messages //-f 动态查看文件的尾部
# logger -t “标题” “内容” //手动产生日志信息(tail -f /var/log/messages)
# while true ; do echo hello >> hello.c ; sleep 1; done //持续写文件

# grep ‘root’ /etc/passwd
# grep –color ‘root’ /etc/passwd
# grep –color ‘^root’ /etc/passwd //^以什么开头
# grep –color ‘bash$’ /etc/passwd //$以什么结尾
# grep –color ‘^$’ /etc/abc.txt //查找空行
# grep -v –color ‘^$’ /etc/abc.txt //去掉空行
# grep –color ‘error’ /var/log/messages
# grep -i –color ‘error’ /var/log/messages //查找error关键字的行,且不区分大小写

# head -9 test.txt|tail -1
# cat -n test.txt|head -5|tail -1
# head -5 test.txt|cat -n |tail -1
# wc test.txt

© 版权声明
THE END
喜欢就支持一下吧
点赞9 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容