Linux常用命令记录

一、so相关

1、查看所有的系统库文件

ldconfig -p

2、缺失.so文件时

使用apt-file

1)安装

apt-get update

apt-get install apt-file

apt-file update

2)寻找依赖库

apt-file search libSM.so.6

3)安装库

apt-get install libsm6

3、查看so架构

readelf -h xx.so

二、python相关

1、安装python模块

pip3 install paramiko==2.11.0

2、修改默认python路径

update-alternatives --install /usr/bin/python python /usr/bin/python2 100

3、将一台机器上的python环境复制到另一台机器

pip3 freeze > 1.txt

pip3 install -r 1.txt

三、磁盘相关

1、挂载

例:

mkfs -t ext4 /dev/vdb

mkdir /usr1

mount /dev/vdb /usr1/

echo "/dev/vdb /usr1 ext4 default 0 0" >> /etc/fstab

2、列出未挂载的磁盘

fdisk -l

四、git相关

git mm info 列出仓信息

git remote -v 远程仓路径

五、bash相关

1、将所有包含aa的文件中的aa替换成bb

sed -i ‘s/aa/bb/g’ `grep -rl "aa"`

2、将a.txt文件中包含aa的行中的aa替换成bb

grep "aa" -rl ./a.txt |xargs sed -i ‘s/aa/bb/g’

3、删除指定字符之间(包含abc dd的行到包含world的行,包括这两行)的内容

sed -i ''/abc dd/, /\/world/d' a.txt

(sed说明:-i 表示修改原文件。命令使用单引号。具体见linux菜鸟教程;另:blog.51cto.com/wujianwei/2417796)

3、交互式输入自动化(参考:cnblogs.com/bulh/articles/12779173.html)

1) 安装expect

apt-get install tcl tk expect

2)demo 1

#!/usr/bin/expect -d           --> 指定解释器,-d可以列出参数等有用信息

spawn ssh gsh@10.151.151.251  --> 相当于新起一个进程

expect "gsh\@10.151.151.251\'s password:"   --> 特殊字符转义

send "gshgsh\n"

#expect eof  --> 退出新起的进程

interact  --> 等待交互

3)demo2

#!/usr/bin/expect -d

spawn scp -r xxx root@xxx:/root/

expect "Are you sure you want to continue connecting (yes/no/\[fingerprint\])?"

send "yes\n"

expect off

4、bash脚本非阻塞式执行多个进程

1)demo

{                                      --> 使用{}括起来(独占一行),后面加&符,表示把命令放入后台执行

/root/xx.jar1

}&

/root/xx.jar2

wait                                  --> 等待放入后台的任务执行完毕再往下执行

六、apt-get install相关

1、apt-get install 出现已经安装低版本等错误提示的时候?

可能是源不对,需要根据ubuntu的版本,cpu架构选择正确的源。 比如ubuntu20.04 arm64

七、ctrl+c的时候kill当前进程及其子进程

trap 'onCtrlC' INT

function onCtrlC () {

        pidLine=`pstree -p $$`

        echo "pstree: ${pidLine}"

        #取括号中的内容

        pidLine=`echo $pidLine | awk 'BEGIN{ FS="(" ; RS=")" } NF>1 { print $NF }' `

        pidList=($pidLine)

        {

                local lastIndex=`expr ${#pidList[@]} - 1`

                for (( i=0; i<=$lastIndex; i++ ))

                do

                        pid=${pidList[i]}

                        echo "kill -9 ${pid}"

                        kill -9 ${pid}

                done

        } &

}

八、gcc相关

1、gcc升级高版本

apt-get update

apt install -y gcc-10 g++-10

update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 --slave /usr/bin/g++ g++ /usr/bin/g++-10 --slave /usr/bin/gcov gcov /usr/bin/gcov-10

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值