linux 实用命令

shell脚本开头

#!/bin/bash

====================================================================
后台运行命令:nohup + &

nohup /home/lzf/anaconda3/bin/python3 HealthPunch.py >> output.log 2>&1 & 
nohup python3 -u irx_mod_disks.py 8 > M8.log 2>&1 & 

====================================================================
修改文本文件内容: sed -i ‘s/abc/xxx/g’ file
abc修改前的字符串;xxx是修改后的字符串 ;file是要被修改的文件

sed -i 's/1.0/5.0/g' inlist_project 

====================================================================
查看电池状态

upower -i /org/freedesktop/UPower/devices/battery_BAT0

====================================================================
定时器:
编辑定时器任务

crontab -e

列出定时器任务

crontan -l

====================================================================
查看某进程
ps + | + grep
ps:查看进程
ps -ef 查看所有进程信息
|: 管道命令,左边命令的输出变为右边命令的输入
grep:查找文件里符合条件的字符串

ps -ef | grep python3

====================================================================
删除7天前的日志文件

sudo find /var/log/ -type f -mtime +7 -exec rm -f {} \;

====================================================================
与服务器传输文件

  • 上传文件到服务器
scp /path/filename username@servername:/path
  • 上传文件夹到服务器
scp -r /home/local_dirname username@servername:/path
  • 下载文件
scp username@servername:/path/filename  /home/local_dir
  • 下载整个文件夹
scp -r username@servername:/path /home/local_dirname

====================================================================
wget下载文件
wget+空格+参数+url

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh

参数:
-c:断点续传
-b:后台下载
-O:下载到指定目录
-P:保存文件之前先创建指定名称的目录
-t:尝试连接次数
-r:递归下载

====================================================================
清除根目录下的软件缓存(.cache目录中)

清理旧版本的软件缓存
清理所有软件缓存
删除系统不再使用的孤立软件
这三个命令主要清理升级缓存以及无用包的

nsudo apt-get autoclean
sudo apt-get clean
sudo apt-get autoremove

====================================================================
批量修改文件名

for name in `ls *`;do mv $name ${name%.dat}_irx.dat;done

若查看修改前后效果

for name in `ls *`;do echo $name ${name%.dat}_irx.dat;done

详解:
假设有变量 var=http://www.google.com/test.htm

1、 # 号截取,删除左边字符,保留右边字符。
echo ${var#//}
其中 var 是变量名,# 号是运算符,// 表示从左边开始删除第一个 // 号及左边的所有字符
即删除 http://
结果是 :www.google.com/test.htm

2、 ## 号截取,删除左边字符,保留右边字符。
echo ${var##/}
##/ 表示从左边开始删除最后(最右边)一个 / 号及左边的所有字符
即删除 http://www.google.com/
结果是 test.htm

3、 %号截取,删除右边字符,保留左边字符
echo ${var%/}
%/ 表示从右边开始,删除第一个 / 号及右边的字符
结果是:http://www.google.com

4、 %% 号截取,删除右边字符,保留左边字符
echo ${var%%/}
%%/ 表示从右边开始,删除最后(最左边)一个 / 号及右边的字符
结果是:http:

====================================================================
一键解决各种依赖问题

sudo apt-get install -f

====================================================================
gcc编译

gcc -o a.c a -lm

若需要 gprof 分析性能

gcc -o a.c a -lm -pg

====================================================================
在当前目录下递归搜索某类文件

find . -name "*.py"

查找指定文件中的特定字符串

find [location] -name "[search-term]" -type f | xargs [command]
find . -name "*.py" | xargs grep -i "str"

====================================================================
批量修改文本文件

sed -i '1,2d' `find . -name "*.spec"`

====================================================================

Linux按列合并两文件,列的拼合
awk 和 cut 都能把一个多列文件差分成单列文件,那么反过来也可以用paste命令把多个单列文件拼合成一个多列文件。

命令举例:

paste A B 将两个文件合并用tab键分隔开
paste -d’+’ A B 将两个文件合并指定’+'符号隔开

====================================================================
查看并截取文本文件中的部分数据
1.如果只想看文件的前100行,可以使用head命令,如

head -100  filename

2.如果你想查看文件的后100行,可以使用tail命令,如:

tail -100  filename 或 tail -n 100  filename

3.查看文件中间一段,你可以使用sed命令,如:

sed -n '100,200p' filename 

这样你就可以只查看文件的第100行到第200行。

4、截取的文件可以用重定向输入到新的文件中:

head -100  filename >a.txt

====================================================================
统计文件夹数目

ls -l | grep "^d" | wc -l

ls -l:列出当前目录下的所有文件和文件夹。
grep “^d”:查找以字母"d"开头的行,这些行表示文件夹。
wc -l:计算行数,也就是文件夹的数量。

====================================================================
统计当前目录文件数目

ls -l | grep "^-" | wc -l
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值