前言
记录自己用过的linux命令,方便自己查看,持续更新~
命令
用户
useradd <username> ## 添加用户
passwd <username> ## 给用户设置密码
userdel <username> ## 删除用户
- 给用户添加sudo权限
chmod u+w /etc/sudoers
vim /etc/sudoers
## 添加如下内容
username ALL=(ALL) ALL
chmod u-w /etc/sudoers
- 修改用户默认(登录)shell
cat /etc/shells ## 查看所有shell
vim /etc/passwd ## root用户下修改任意用户shell
chsh -s shell绝对路径 ## 普通用户修改自己的shell
- 切换用户:(switch user)
su <username> ## 只切换身份
su - <username> ## 切换身份和shell(包含环境变量)
目录/文件
mkdir dir ## 创建目录
mkdir -p dir ## 若目录的父级目录不存在,依次创建之
touch file ## 创建文件
rm -r dir ## 递归删除目录/文件
cp [-r] 原目录|文件 目标目录/文件名 ## 复制目录/文件到目标目录
mv [-r] 原目录|文件 目标目录/文件名 ## 移动目录/文件到目标目录
sudo -E vim file ## 使用当前终端用户的配置文件sudo
// 删除多个除了A
shopt -s extglob // (打开extglob模式),能识别更多规则
rm -rf !(file1|file2) // 当前目录除了file1,file2,剩下的都删除
tail -f /tmp/xhb.log # 一般查看日志文件的最后几行
ll | wc -l ## 统计某目录下文件数
- 修改目录/文件权限
chmod 777 <dir|file> ## 设为最高权限
## u->user;g->group;o->other;
chmod a+x <dir|file> ## 所有人添加执行权限
chmod u-x <dir|file> ## 自己去除执行权限
chmod u=rwx,g=x,o=x <dir|file>
- 修改文件属主,属组
chown <username>:<groupname> <dir|file>
- 使刚修改的文件马上生效
## 给.zshrc文件添加代码
echo 'export HOMEBREW_BOTTLE_DOMAIN=https://mirrors.ustc.edu.cn/homebrew-bottles' >> ~/.zshrc
## 使其马上生效
$ source ~/.zshrc
搜索
updatedb ## 更新数据库
locate <内容>
whereis
which
find . -iname "*Test*" // 当前目录下(忽略大小写)模糊查找
grep -in 'abc' ./ -r ## 找出当前目录下所有文件包含某abc(不区分大小写)的行,及显示行号
网络
- 下载
wget url ## 下载文件到当前目录,不打印文件内容
wget -O <filename> url ## 下载文件到指定目录,并重命名之,缺省则为原文件名
wget url -O - ## 打印文件内容,不保存到文件
curl url ## 打印文件内容,不保存到文件
curl -O <filename> url ## 下载文件到指定目录,并重命名之,缺省则为原文件名
- 防火墙
// 设置规则
iptables [-t table] command chains [creteria] -j action
service iptables status
/etc/init.d/iptables status
// 打开端口
iptables -A OUTPUT -p tcp --dport 端口号-j DROP
// 关闭端口
iptables -A INPUT -p tcp --dport 端口号-j ACCEPT
// 查看端口是否开启
netstat -an | grep 23
// 删除默认表filter的INPUT链的第二条规则
sudo iptables -D INPUT 2
table表:filter(默认),nat,mangle
chains链:PREROUTING ,POSTROUTING,INPUT,OUTPUT,FORWARD
command:-A(–append),-D(–delete), -I(–insert), -R(–replace)
action:ACCEPT,DENY,DROP,REJECT ,SNAT ,DNAT
- 服务器间复制
## 将192.168.6.119服务器的/services/a.php文件 下载到本地当前目录
scp kbellx@192.168.6.119:/services/a.php ./
## 将本地/services/a.php文件上传到192.168.6.86服务器kbellx的家目录
scp /services/a.php / kbellx@192.168.6.86:~
服务管理
- centos7
systemctl start|stop|status|restart **d.service
systemctl enable|disable **d.service ## 开启|关闭自启动
systemctl is-enabled **d.service ## 查看服务是否自启动
安装
sh -c "$(wget url**.sh -O -)" ## 执行指定url的shell文件,一般为install.sh
终端
Ctrl + a
: 回行首ctrl + e
:回行尾ctrl + u
:清除本行
场景
-
修改$PATH环境变量
-
立即生效,临时改变,当前用户:
export PATH=$PATH:/usr/local/go/bin
-
永久改变,当前用户:
-
vim ~/.bashrc ;添加export PATH=$PATH:/usr/local/go/bin
-
重启终端或
source ~/.bashrc
且仅对bash终端生效
-
-