linux常用命令汇总

这篇博客汇总了Linux系统的常用命令,包括错误处理、文件操作、数学运算、增删改查、软件安装等方面。涉及内容如:安装中文字体、文件转换、删除空格、替换字符串、修改环境变量、安装CUDA与cuDNN、查询进程、查看软件版本等,旨在帮助用户提升Linux操作效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

常用命令汇总

  • 显示中文目录
#apt-get install -y locales
#locale-gen en_US.UTF-8
apt-get install language-pack-en
export LANG=en_US.UTF-8   #locale 查看语言设置
echo "export LANG=en_US.UTF-8" >>~/.bashrc
apt-get install fontconfig
fc-list #查看字体位置
sudo apt-get install ttf-wqy-zenhei  #文泉驿-正黑
sudo apt-get install xfonts-wqy #文泉驿-点阵宋体
  • 替换文件中非法符号
name=$1
sed -i 's/)/\\\)/g' $name 
sed -i 's/(/\\\(/g' $name 
sed -i 's/~/\\\~/g' $name 
sed -i 's/`/\\\`/g' $name 
sed -i 's/]/\\\]/g' $name 
#sed -i 's/[/\\\[/g' $name 
sed -i 's/}/\\\}/g' $name 
sed -i 's/{/\\\{/g' $name 
  • 基于txt文件的列复制文件
cat parse_979_imgcheck_test.txt |awk '{printf ("cp imgCheckTest/%s test/%s/%s\n",$1,$2,$3)}'|sh     #把第一列文件复制到test文件夹中
  • 显示txt某列大于某数值的行
cat tmp.txt |awk '$3<0.95{print $0}'|head  #tmp.txt文件的第三列中小于0.95的行

awk -F '.' '{$1="";OFS=".";print $0}' tmp_dup.txt #以.作为分隔符,输出第一列之后的所有列
.1.jpg
.14.10.jpg
  • window文件转换为linux文件
apt-get install dos2unix
dos2unix *.txt
sed  's/$/_1_/' ori.txt |head  #查看是否正确:行末添加_1_
  • windows中文名称文件在linux系统乱码,参考这里
apt-get install convmv 
convmv -f gbk -t utf-8 -r --notest data/*    #文本内容转换 iconv;文件名转换 convmv
  • 修改文件某列的内容
awk 'BEGIN{a="car";}
{for(c=1;c<=NF;c++)
{
  
  {if (c!=NF){printf("%s ", $c);} else {printf("%s\%s\n",a,$c);}} }}' product.txt  #对product文件的最后一列之前加入car字符串 3 2 4 abc变为3 2 4 carabc

awk -F ' ' '{print $1 "." $2 "." $3 "\t" $4}' tmp.txt >tmp2.txt #3 2 4 abc变为3.2.4 abc
source mypath  #mypath文件中内容为export PYTHONPATH=$(pwd)/lib等
  • 下载torrent
apt-get install aria2
aria2 ${torrentname}
  • 宿主机上修改Docker内root权限的文件
useradd 123   #Docker内增加新用户
chown 123 ${folder} #修改文件拥有者
chmod 757 ${folder} -R  #修改其他用户和执行权限
  • 脚本环境使用/bin/bash,而不使用/bin/sh。一方面sh是bash的软连接,另一方面,如果不是bash的软连接则会报诡异错误。
记自启动容器的诡异报错,
cuInit failed: unknown error
最后发现是/bin/sh环境的缘故,最后将Dockerfile文件中启动环境修改为/bin/bash就OK了

cat /etc/shells #查看可用终端
echo $SHELL     #查看当前窗口终端
  • 删除
apt-get remove python3.6 -y
apt autoremove
  • 显示.so文件函数
nm -D lib**.so    //结合 |awk '{print $2,$3}' | grep T   查看函数名
objdump -tT lib**.so  //结合 | grep 'DF .text' 查看函数名称; 结合 | grep 'df \*ABS' 查看文件名
export PATH=~/anaconda2/bin:$PATH
apt-get install build-essential cmake
python -c 'import sys; print (sys.version_info[0])'  #输出2或3

错误汇总

linux和windows的换行符不同,导致无法查找文本文件记录的文件

Linux常用命令汇总,用于初学者学习Linux知识 “Hello everybody out there using minix ---- I’m doing a free operating system” 1991.8,网络上出现了一篇以该句开头的一个帖子,发帖人就是一个芬兰的Linus Torvalds的大学生为自己开始写作一个类似的minix(类似与Unix操作系统,1987年发布)可运行在386的操作系统寻找志同道合的合作伙伴 1991.10.5,Linus Torvalds在comp.os.minix发布了大约有一万行代码的Linux v0.0.1版本, 1992年,大约有1000人在使用Linux,值得一提的是,他们基本上都是属于真正意义上的hacker。 1993年,大约有100余名程序员参与了Linux内核代码的编写和修改工作,核心小组5人,此时Linux0.99的代码大约有10万行,用户大约有10万左右。 1994.3,Linux1.0发布,代码量17万行,当时是按照完全自由免费的协议发布,随后采用GPL(general public license,通用公共许可证试图保证你共享和修改自由软件的自由)协议。至此,Linux的代码开发进入良性循环。很多系统管理员开始在自己的操作系统环境中尝试使用Linux,并将修改的代码提交给核心小组。由于拥有了丰富的操作系统平台,因而Linux的代码中充实了对不同硬件系统的支持,大大提高了跨平台移植性。 1995,此时Linux可在Intel、digital以及sun sparc处理器上运行,用户量也超过了50万,相关介绍Linux的杂志也发行超过了10万册之多。 1996.6,Linux2.0内核发布,内核大约有40万行代码,并可以支持多个处理器,此时的Linux已经进入了实用阶段,全球大约有350万人实用。 1997,《Titanic》在制作特效中使用了160台图形工作站中,有105台采用了Linux操作系统。 1998,是Linux迅猛发展的一年,1月,小红帽RedHat高级研发工作室成立,同年RedHat5.0获得infoWord的操作系统奖项。4月Mozilla代码发布,成为Linux图形界面上的王牌浏览器。RedHat宣布商业支持计划,网络了多名优秀的技术人员开始商业运作。王牌搜索引擎Google采用的也是Linux服务器。值得一提的是, Oracle 和Informix 两家数据库厂商明确表示不支持Linux,这个决定给予了Mysql数据库充分的发展机会。同年10月,Intel和Netscape宣布小额投资红帽软 件,这被业界视作Linux获得商业认同的信号。同月,微软在法国发布了反Linux公开信,这表明微软公司开始将Linux视作了一个对手来对待。十二 月,IBM发布了适用于Linux的文件系统AFS 3.5以及Jikes Java 编辑器和Secure Mailer及DB2测试版,IBM的此番行为,可以看作是与Linux羞答答地第一次亲密接触。迫于Windows和Linux的压力,Sun逐渐开放 了Java协议,并且在UltraSparc上支持Linux操作系统。1998年可说是Linux与商业接触的一年。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值