linux命令积累
2023-12-11
1.查找指定目录下第二层目录,一年前的文件
find $dir -maxdepth 1 -type d -mtime 365
2./data/att/dir1软连接到/data1/att/dir1
硬连接和软连接的区别
硬连接
ln file1 file2
1.硬连接不能对目录进行链接。
2.硬连接修改一个文件(不论修改哪方文件),另一个文件也会被修改。
3.不能对不同文件系统做硬连接。
4.所有的的硬连接具备相同的iNode节点号
软连接:
ln -s file1 file2
1.软连接相当于win的快捷方式,删除了源文件,链接文件就无法使用。
2.创建链接一定要用绝对路径,相对路径会找不到文件。
file1是源文件,file2是软连接名(可以随意定义)
3.给目录创建软连接
ln -s /tmp/kafka-log ~/zwh-log
pwd命令看到软连接目录路径
pwd -P命令看到软连接源文件路径
删除软连接
文件:
rm -rf file1
目录:
注意:rm dir1,一定不要加-rf,这样不会把软连接删掉,而且会把实际目录的所有文件删掉!!!
ls -n /data/att/dir1 data1/att/dir1
3.rsync同步文件并同步创建目录
rsync -aR /data/att/dir1 data1/att/dir1
4.shell脚本定义main函数,调用时输出到日志文件
mian()
{
代码
}
main &> /tmp/move_log_`data +%F`.log
2023-12-10
1.查看文件权限命令
stat -c %a file1
2.查看文件所属用户权限
stat -c %U file1
3.查看文件所属组权限
stat -c %G file1
3.shell脚本中可以不用if直接进行的判断
例如:
判断如果dir1不是文件,则权限赋值成755
[ ! -f dir1 ] && chmod 755
4.shell脚本中&&接在判断后面,代表前面前面命令执行成功再执行后面命令,||代表前面命令执行失败则执行后面命令。
5.find .代表查找当前目录下所有目录和文件,可用于查找后做判断。
6.find查找文件并做判断
#find查找判断如果目录权限不是755,那么修改成755
find /data/wwwroot/app/ -type d ! -perm 755 -exec chmod 755 {} \;#find查找判断如果不是目录,并且权限不是644,那么权限改成644
find /data/wwwroot/app/ ! -type d ! -perm 644 -exec chmod 644 {} \;#find查找所有文件和目录,如果属主不是root,那么属主改成root
find /data/wwwroot/app/ ! -user -exec chown root {} \;#find查找所有文件和目录,如果属组部署www,那么属主改成www
find /data/wwwroot/app/ ! -group www -exec chgrp www {} \;