Linux常用命令

Linux常用命令总结

由于工作中使用AWS服务器比较多,版本为Ubuntu16.04和Ubuntu18.04,linux使用的也比较多,将常用的命令总结一下。

新建用户&添加sshkey

sudo useradd -r -m -s /bin/bash username
sudo su - username
mkdir .ssh
chmod -R 700 .ssh
cd .ssh
touch authorized_keys
vim authorized_keys
将publickey放入

查用户及所属组&查组下的用户

id username
cat /etc/group

给用户sudo权限

增加sudoers文件的写权限:sudo chmod u+w /etc/sudoers
vim /etc/sudoers 找到root ALL=(ALL:ALL) 在下面添加
username ALL=(ALL:ALL) NOPASSWD:ALL
再去除sudoers文件的写权限:sudo chmod u-w /etc/sudoers

查看IP端口是否畅通

telnet XXX.XX.XX.XX 端口号

查看端口占用情况,确定进程

netstat -anp | grep 端口号 或者 lsof -i:端口号
查看到对应pid后
ps -aux | grep pid
查看到哪个进程使用,判断是否需要kill
kill -9 pid

查看服务器防火墙

sudo ufw status 查看防火墙状态
开启端口或服务
sudo ufw allow 6000 允许外部访问6000端口
sudo ufw allow from XXX.XX.XX.XX 允许此IP访问所有的本机端口
sudo lsof -i:6000 查看应用是否监听
说明:中国区的AWS的80,8080,443端口等需要备案,直接开是不通的;如果服务器部署在AWS,系统自带的防火墙可以直接关掉,没有意义,通过AWS安全组来统一控制入站出站

查看磁盘空间大小&文件夹下的每个文件大小

df -hl
du -sh * (查看单个文件可以把*替换成文件名)

查看文件权限及文件拥有者

ll(等同于ls -al)

查看csv文件

安装csvtool sudo apt-get install csvtool
csvtool readable filename | view -

screen命令后台执行

screen -S XXX 新开窗口,在这个窗口下执行文件
python3 XXX.py
ctrl + a,d 执行退出命令
screen -ls
‘Attached’表示这个session是活动的,3677表示此screen会话的进程号,可以发现一直在后台运行了如果想连接上这个session,执行命令(后面的数字根据screen -ls可以查看到)
screen -S XXX(或进程号)-X quit 关闭一个screen
screen -ls 查看一下是否还有这个进程

crontab定时执行

crontab -e
10 0 * * * cd /home/fanweinan && python3.5 -u timing.py 每日0点10分执行timing.py文件(这个时间是服务器时间,可以用date查询服务器时区时间)
*/30 * * * * cd /home/fanweinan && python3.5 -u disk.py 每半小时执行disk.py文件
2s执行一次
方法一(比较麻烦,需要写30个语句)

          • cd /home/fanweinan && python3.5 test.py
          • sleep 2; cd /home/fanweinan && python3.5 test.py
          • sleep 4; cd /home/fanweinan && python3.5 test.py

方法二(shell脚本实现)
vim crontab_2s.sh之后写入
#!/bin/bash step=2 #间隔的秒数,不能大于60
for (( i = 0; i < 60; i=(i+step) )); do
$(/home/fanweinan/test.py)
sleep $step
done
exit 0
运行sh脚本 source crontab_2s.sh

          • /home/fanweinan/crontab_2s.sh (crontab -e写入)

alias

如果经常使用某个命令,或者是某个命令特别长、很难拼写,那么为这个命令起个别名,是很值得的。在创建别名以后,只要输入别名,就可以运行它所引用的命令。
在shell中输入alias可以查看所有别名

查看版本

lsb_release -a

No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.4 LTS
Release: 16.04
Codename: xenial

改时区

查看服务器时间
date
改时区
tzselect
选择Asia,China,Beijing
复制文件到/etc目录下
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
再次查看服务器时间
date

查日志

grep 多条件查询
less test.log | grep “xxx” | grep “xxx”
按时间范围查询
举例,查询3月6号8点35分到8点39分数据
less test.log | grep “2020-03-06 08:3[5-9]”

$grep -5 ‘parttern’ inputfile //打印匹配行的前后5行

$grep -C 5 ‘parttern’ inputfile //打印匹配行的前后5行

$grep -A 5 ‘parttern’ inputfile //打印匹配行的后5行

$grep -B 5 ‘parttern’ inputfile //打印匹配行的前5行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值