linux命令记录(查找文件、抓取进程、别名、赋权、查看、压缩、文件同步 )

本文详细介绍Linux环境下常用的命令操作,包括文件查找、进程抓取、文件权限设置、文件查看与压缩、文件同步等实用技巧。此外还介绍了如何进行主机间的文件同步及简单的网络连接判断。

查找文件

find命令、grep命令
find 查找目录 [-参数名 参数值,…]
find . -name “abc.java” 在查找一个名为abc.java的文件
find . -name “.properties"|xargs grep 60000 在后缀名为properties的文件中查找包含60000的所有文件
find . -mtime -1 -type f|xargs ls -l 查找1天内改动过的文件,并列出详情
find . -name "
.properties”|xargs grep -v zookeeper|grep 60000 在后缀名为properties的文件中查找包含60000所在行不包含zookeeper的所有文件
find . -name “.properties"|xargs grep -v zookeeper|grep -n 60000 同上,-n增加显示所在行的行数
find . -name "
.properties”|xargs grep -v zookeeper|grep -in http 同上,忽略大小写查询包含http的文件

抓取进程

ps -ef|grep java、端口号、应用名等关键字 找进程
ps -fu 用户名 指定用户下的进程

别名

alias命令及.bash_profile文件、uname命令
uname显示主机类型,
unix 对应的文件名是.profile
linux 对应的文件名是.bash_profile
在帐号的主目录下,vi进入.bash_profile文件,输入alias 别名=‘指定的命令’
如 alias l =‘ls -tlr’
保存退出后,需要执行. .bash_profile,表示重新加载环境变量使刚刚的操作生效。或者退出重新登录

赋权

drwxr-xr-x可分为4组,即
d 表示当前文件是一个目录,文件为-
rwx 第一组,表示pgcapp(即该文件的拥有者)所拥有的权限
r-x 第二组,表示app组下的其他账号所拥有的权限
r-x 第三组,表示其他账号所拥有的权限
r表示读,权值=4,w表示写,权值=2,x表示执行,权值=1
chmod 权限权值和 文件(文件夹)名
权限权值和及上面所标数字对应的权限,例如:4+2=6,表示赋读写操作权限。1表示赋执行权限
一般情况下,建议使用如下命令进行赋权,即只给文件拥有者赋所有权限,同组其他账号级其余账号,只赋读和执行权限,没有可写权限
chmod 755 aaa.java 给文件赋权
chmod -R aaa 递归操作给文件赋权

查看文件

more 打开一个文件,并只能向后查看文件,不可往前翻,回车翻一行,空格翻一页
less 同more,支持向前查看文,支持vi的翻页命令
cat 一次性显示文件中的所有内容
tac cat命令的反向操作,反向显示文件中的所有内容
tail 查看文件尾部的几行,可带参数-n,n表示行数
head 查看文件头部的几行,可带参数-n,n表示行数

tail -100f out.log

压缩

tar -cvf aaa.tar ./ 打包当前目录下的所有文件,并命名为aaa.tar
tar -cvf nginx1.tar --exclude=logs * 打包当前文件夹中除了logs文件外其他文件
tar -xvf aaa.tar ./ 将当前目录下的aaa.tar文件解压

同主机文件同步 cp

cp
cp -r

主机之间文件同步 sftp

sftp 用户名@主机 输入密码
sftp user@10.xx.xx.xx Password
cd applications
get ./aaa.jsp 获取连接主机的文件
get -r ./aaa 获取连接主机的文件夹

其他

mkdir 创建目录
mv 移动文件,类似windows的剪切粘贴操作。同时可以实现文件改名,mv a.txt b.txt表示把a.txt文件改名b.txt
cp 复制文件,类似windows的复制粘贴操作。
rm 删除文件。-f表示强制删除,不经过询问。-r表示循环删除子目录
wc 列出一个文件的统计结果,结果有3列,分别为:行数、单词数、字符数,对应的命令为-l、-w、-c。该命令一般不单独使用,会配合ls或者find命令,用做统计用
pwd 显示当前的路径
du和df 用于查看文件或目录的使用情况
whereis 查找linux命令所处位置
man 帮助命令,可以查看所有命令的用情况

判断主机之间连接

ping
telnet
ssh -v -p {对端端口} monitor@{对端IP}

Linux 系统中,若需要对某个文件夹及其所有子文件夹和文件进行权限赋值,可以使用 `chmod` 命令并结合 `-R` 选项实现递归修改。该方法会将指定权限应用到目标目录下的所有内容,包括子目录和文件。 ### 修改文件夹及其内容的权限 要递归地更改文件夹及其中所有文件和子文件夹的权限,可使用如下命令: ```bash sudo chmod -R <权限模式> <文件夹路径> ``` 其中: - `-R` 表示递归操作,即对指定目录下的所有子目录和文件同时进行权限更改。 - `<权限模式>` 可以是数字表示法(如 `755`、`777`)或符号表示法(如 `u=rwx,g=rx,o=r`)。 #### 示例 1:使用数字权限模式 以下命令将 `/path/to/directory` 目录及其所有子目录和文件的权限设置为所有用户(所有者、组、其他)均可读、写、执行: ```bash sudo chmod -R 777 /path/to/directory ``` #### 示例 2:使用符号权限模式 如果希望仅允许所有者读、写、执行,而组用户和其他用户只能读和执行,可以使用: ```bash sudo chmod -R u=rwx,g=rx,o=rx /path/to/directory ``` ### 注意事项 - **谨慎使用 `777` 权限**:赋予所有用户完全访问权限可能会带来安全风险,建议仅在必要时使用,并优先考虑更严格的权限设置。 - **权限继承**:`chmod` 不会自动设置新文件或子目录的默认权限,如需实现该功能,可以考虑设置父目录的 `umask` 或使用 `setfacl` 命令[^1]。 ### 常用权限说明 - `7`:读(4)+ 写(2)+ 执行(1) - `6`:读(4)+ 写(2) - `5`:读(4)+ 执行(1) - `4`:只读 ### 示例脚本:批量设置权限 以下脚本可用于批量设置指定目录下的所有文件和子目录权限: ```bash #!/bin/bash DIR="/path/to/directory" # 设置所有用户对文件夹有读写执行权限 find $DIR -type d -exec chmod 777 {} \; # 设置所有文件对所有用户有读写权限 find $DIR -type f -exec chmod 666 {} \; ``` 此脚本分别对目录和文件设置权限,避免了对目录和文件使用相同权限的问题[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值