linux文件处理命令
-
通配符作用,匹配文件或者文件名
- ? 匹配一个任意字符
- * 匹配 0 个或任意多个任意字符,也就是可以匹配任何内容,正则表达式中表示匹配前面的子表达式零次或多次
- [] 匹配中括号中任意一个字符。例如,[abc] 代表一定匹配一个字符,或者是a,或者是b,或 者是c,不能用于创建文件和目录
- [-] 匹配中括号中任意一个字符,-代表一个范围。例如,[a-z] 代表匹配一个小写字母,不能用于创建文件和目录
- [^] 逻辑非,表示匹配不是中括号内的一个字符。例如,[^0-9] 代表匹配一个不是数字的字符,不能用于创建文件和目录
- {string, string} 匹配其中任意一个字符串,".."表示匹配字符串之前的一个范围
-
查看文件信息: ls
ls
查看文件列表ls -l
或者ll
查看文件列表详情ls -a
查看所有文件,包含隐藏文件
-
切换工作目录: cd
cd ..
返回上一级目录cd /
切换根目录cd /home
切换绝对路径cd ./test
切换当前目录的test目录下
-
显示当前工作路径:
pwd
-
创建新目录: mkdir
mkdir test
当前目录下创建test文件夹mkdir -p test/test1
递归创建文件夹mkdir dir{1,2}
创建目录dir1和dir2
-
创建新文件: touch
touch test.txt
创建test.txt文件touch test{1..9}.txt
创建test1.txt,test2.txt直到test9.txt
-
删除文件或者目录: rm
rm test.txt
删除test.txt文件rm -r test
删除test目录rm -rf test/test.txt
强制删除文件或者目录rm -rf *.txt
强制删除以.txt结尾的文件rm -rf test{1..9}.txt
删除test1.txt,test2.txt直到test9.txtrm -rf *dir*
强制删除包含dir的文件
-
拷贝: cp
cp test.txt /home/test/
把当前目录下的test.txt文件复制到/home/test目录下cp test.txt /home/test/test2.txt
把当前目录下的test.txt文件复制到/home/test目录下,并重命名为test2.txtcp ./* /home/test
将当前目录所有文件复制到/home/test目录下cp -r test /home/test1
将当前目录下的test文件夹复制到/home/test1目录下
-
移动/重命名: mv
mv test.txt /home/test/
把当前目录下的test.txt文件剪切到/home/test目录下mv test.txt /home/test/test1.txt
把当前目录下的test.txt文件剪切到/home/test目录下,并重命名为test1.txtmv test.txt test1.txt
把当前目录下的test.txt文件改名为test1.txt
-
建立链接文件: ln
ln -s /home/test/test.txt /home
给/home/test/test.txt文件创建软链接(类似于windows下的快捷方式)到home目录下,注意一定要使用绝对路径,可以像使用文件一样使用文件的软链接,软链接指向同一个文件ln -s /home/test/ /home
给/home/test/文件夹创建软链接indows下的快捷方式)到home目录下,注意一定要使用绝对路径,可以像使用目录一样使用目录的软链接,软链接指向同一个文件夹
-
查找文件: find
find /home/test -name "test.txt"
在/home/test目录下寻找test.txt文件find . -name "*.jar"
在当前目录下寻找所有.jar结尾的文件
-
查看文件内容: cat less more head tail
cat test.txt
查看test.txt所有内容less test.txt
分页查看test.txt所有内容head -5 test.txt
查看test.txt前五行内容tail -5 test.txt
查看test.txt末尾五行内容tail -f test.txt
动态查看test.txt的test.txt新增的内容,常用于监控新的日志打印
-
打包压缩: tar
tar cvf test.tar test.txt test1.txt
打包test.txt和test1.txt成文件test.tar,打包并不会缩减文件占用磁盘大小,只是将两个文件打包在了一起tar zcvf test.tar.gz test.txt test1.txt
打包并压缩test.txt和test1.txt成压缩文件test.tar.gztar zxvf test.tar.gz
解压缩test.tar.gz到当前目录tar zxvf test.tar.gz -C /home/test
解压缩test.tar.gz到/home/test目录下
-
屏幕输出: echo
echo "paul"
屏幕打印字符串paul
-
输出重定向: >
echo "paul" > test.txt
将paul写入文件test.txt
-
文件属性
- 第一个字符代表这个文件是目录、文件或链接文件等
- 当为 d 则是目录
- 当为 - 则是文件;
- 若是 l 则表示为链接文档(link file);
- 若是 b 则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
- 若是 c 则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)
- 第一个字符代表这个文件是目录、文件或链接文件等
-
修改文件或者目录权限
- r:读取权限--4,w:写权限--2,x:操作权限--1,-无权限--0
- u用户权限,g用户组权限,o除了用户和用户组的权限
chmod u+r+w+x test.txt
用户加上读写和执行的权限对于文件test.txtchmod g+r test
用户组加上读的权限对于文件夹testchmod o+x test.txt
others加上执行的权限对于文件test.txtchmod 755 test.txt
对于test.txt文件,用户加上读写执行权限,用户组加上读执行权限,others加上读执行权限
-
查看网卡信息
ifconfig
ech0就是电脑网卡,负责接收发送转发网络包,innet后面就是本机ip地址
-
查看网络联通性
ping 183.168.13.5
-
查看网络信息
- -t:列出所有tcp,-n:以数字形式显示地址和端口号,-p:显示进程的pid和名字
netstat -tnp
查看所有tcp连接netstat -tlnp
查看所有处于listen状态的tcp连接netstat -tlnp | grep 8080
查看所有处于listen状态的tcp端口号是8080的连接
我在想我要不要写一句励志的话......