Linux/Ubuntu相关

使用shell去运行脚本,两种方法 bash xxx.sh,另外一种就是bash -c “cmd string”

命令行快捷键: 

Ctrl + 左右键:在单词之间跳转
Ctrl + u:删除当前光标前面的所有文字(还有剪切功能)
Ctrl + k:删除当前光标后面的所有文字(还有剪切功能)
Ctrl + y:粘贴Ctrl+u或ctrl+k剪切的内容
Ctrl + w:删除光标所在单词前面的所有字符
Ctrl + d:向后逐个删除字符(命令行没有任何字符时,会结束终端)
Alt + d:向后逐个删除单词
Ctrl + r :搜索历史命令
Ctrl + shift + t (当前终端打开新页面)

快捷键:(Ubuntu & terminal 实用快捷键(实用,非大全)


查看进程cpu占用

首先通过 ps -ef | grep <exe_name> 找到对应的进程PID

然后 top -p PID

查找find用法

find /tmp/ -name test.txt
find /tmp ! -iname '*.txt' -type f -size +1G -mtime -2 # 查找/tmp下名字不为.txt的文件,大小超过1G,且该文件2天以内被修改过

sudo

sudo -l
sudo !!

cd

cd -

cp

cp -f # 覆盖已经存在的目标文件而不给出提示。

grep

grep [-acinv] [--color=auto] '搜寻字符串' filename
-a :将 binary 文件以 text 文件的方式搜寻数据
-c :计算找到 '搜寻字符串' 的次数
-i :忽略大小写的不同,所以大小写视为相同
-n :顺便输出行号
-v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行!
--color=auto :将找到的关键词部分加上颜色显示

grep -V  # 查看grep版本号
grep -r # 快速搜索在目录下面的含有关键字的文件
grep -C 5 foo file # 显示file文件里匹配foo字串那行以及上下5行
grep -B 5 foo file # 显示foo及前5行
grep -A 5 foo file # 显示foo及后5行
grep -E 'foo|bar' file #grep匹配任意关键字

 查看gcc版本:

gcc --version

查看linux版本:

cat /etc/issue

查看内核版本:

cat /proc/version

uname -a

查看主机名: 

hostname

查看linux的位数:

getconf LONG_BIT

ldconfig命令 的用途主要是在默认搜寻目录/lib/usr/lib以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如lib.so),进而创建出动态装入程序(ld.so)所需的连接和缓存文件。缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表,为了让动态链接库为系统所共享,需运行动态链接库的管理命令ldconfig,此执行程序存放在/sbin目录下。

ldconfig通常在系统启动时运行,而当用户安装了一个新的动态链接库时,就需要手工运行这个命令。

下载:

git clone https://github.com/xxx.git # 专门用来下载github上的东西
git clone git@github.com://xxx.git

wget http://www.xxx # 从指定的url下载文件
-c # 继续下载中断的文件
-p # 下载到指定目录

串口永久赋权:

在 /etc/udev/rules.d 目录下面添加一个 20-usb-serial.rules,内容如下:

KERNEL=="ttyUSB*"  MODE="0666"

保存,重新插入USB转串口

更改ubuntu分辨率:

xrandr
xrandr -s 1680x1050

挂载:

sudo mount -a
sudo mount -t cifs -o username=alan //10.10.10.10/public/ /media/nas

压缩 / 解压缩:

# *.tar文件
tar -cvf file_name.tar dir/ # 压缩
tar -xvf file_name.tar # -C /tmp # 解压缩,指定解压到哪里

# *.tar.gz和*.tgz文件
tar -czvf file_name.tgz dir/ # 压缩
tar -xzvf file_name.tgz # 解压缩

# *.gz文件
gzip file_name # 压缩
gzip -d file_name.gz # 解压缩
gunzip file_name.gz # 解压缩

# *.bz2文件
bzip2 -d file_name.bz2 # 解压缩
bunzip2 file_name.bz2 # 解压缩

# *.tar.bz2文件
tar jxvf file_name.tar.bz2 # 解压缩
tar --bzip xvf file_name.tar.bz2 # 解压缩

# *.zip文件
unzip file_name.zip # 解压缩

# *.rar文件
unrar e file_name.rar # 解压缩

# *.zst文件
sudo apt-get install zstd
unzstd file_name.zst # 解压缩

查看目录树:

tree -L 2

查看当前路径:

pwd

隐藏文件夹 

mkdir -p alan/.hide_dir/
touch alan/.hide_dir/.hide_file.txt

ubuntu修改root密码:

sudo passwd root

ubuntu修改用户密码:

sudo su
sudo passwd username

reboot // 重启
shutdown -h now // 关机


 移动 / 修改文件/文件夹名:

mv file_name1 file_name2

 强制关闭程序:

top//按占用资源从多到少显示现在系统的进程,找到要关掉的进程第一列的PID编号,输入q退出
sudo kill <pid>

关闭gedit自动备份功能:

用gedit编辑文档总会生成以~结尾的备份文档,关闭备份功能可在(Edit->Preferences->Editor)里取消选中“保存前创建备份文件”就可以了。

可通过rm -rf *.*~命令删除目录下所有的这类备份文件(-r:目录中与子目录中所有的符合条件文件都删除;-f:忽略不存在的文件,不给出提示)

提取cam0/data文件夹下所有图像的时间戳到timestamp.txt

ls cam0/data/ > timestamp.txt
sed -i 's/.png//g' timestamp.txt
sed -i "s/origin_str|replace_str/g" filename

shell脚本注释: '#'

查看ip地址:

ifconfig # eno1 / inet addr那个

rsync的使用

(1)说明:rsync是一个快速、多功能的远程(和本地)文件拷贝和同步工具,比scp更强大,支持“不覆盖”原目。

(2)选项:

-a, --archive 表示以递归方式传输文件,并保持所有文件属性,等同于"-rtopgDl"或"-rlptgoD"。
-v, --verbose 显示rsync过程中详细信息,可以使用"-vvvv"获取更详细信息。
-z, 传输时进行压缩提高效率。
-u, --update 仅仅进行更新,也就是跳过所有已经存在于DST,并且文件时间晚于要备份的文件。(不覆盖原目录内容)
-t, --times 保持文件时间信息。
-r, --recursive 对子目录以递归模式处理。
-R, --relative 使用相对路径信息。
-c, --checksum 打开校验开关,强制对文件传输进行校验。
-q, --quiet 精简输出模式。
--progress 可以查看拷贝的过程。
--stats 显示文件传输的详细信息。
-S
--update 
--size-only

(3)用例:

rsync -avz foo:src/bar /data/tmp    //拷贝目录下的所有文件
rsync -avz foo:src/bar/ /data/tmp    //带有尾随斜线(/)时拷贝目录本身
rsync -avzu --progress /foo/ <user_name>@<ip>:/bar/
rsync -aR

ubuntu支持exfat方法:

sudo apt-get install exfat-utils

htop 是Linux系统中的一个互动的进程查看器

sudo apt-get install htop
htop

查看内存使用情况

df -h
free -m

查看当前目录下文件的大小

du -h --max-depth=1

查看当前目录下所有文件及文件夹的大小

du -sh *

修改DNS

sudo vim /etc/resolv.conf

添加 nameserver xx.xx.xx.xx

search localdomain

前面加#号注释

sudo systemctl restart networking.service

添加nameserver:

在/etc/rc.local文件中加入

echo "nameserver 10.18.50.60" > /etc/resolv.conf
echo "nameserver 114.114.114.114" >> /etc/resolv.conf

然后 source /etc/rc.local

查看是否添加成功 cat /etc/resolv.conf 

修改 tmp 文件夹下面所有文件的权限:

tmp$ sudo chmod -R 777 .
sudo chmod 777 file
sudo chmod ugo+w file # user, group, other (r,x,w)(4,2,1)
sudo chmod a+w file

 计算当前目录下文件/文件夹的数目:

ls -l |grep "^-"|wc -l # 文件数目
ls -l |grep "^d"|wc -l # 文件夹数目
cat test.txt | grep “key word” | wc -l

一行运行多个命令

cmd1 && cmd2

scp拷贝:

格式:  scp -i 私钥文件目录 -P 远程主机端口 登录用户名@远程主机ip:远程待下载文件  本地文件目录(文件存放目录)

scp -i xxx.rsa -P 1234 -r user_name@192.168.0.0:/xxx_dir /xxx/ # 或-i xxx.pem

查看命令行历史(Ctrl+r)

history

cd -

查看文件的头、尾部分

head test.txt
tail test.txt

二进制和十进制相互转换:

echo "obase=2;1314520" | bc // 101000000111011011000
((i=2#101000000111011011000));echo $i // 1314520


#pip/pip2
which pip
pip search pypcd
pip install pypcd
pip install pypcd --user
pip list
pip uninstall pypcd

连接打印机

打开Printers -> 点击 Add -> Network Printer -> AppSocket/HP JetDirect,在Host中填入打印机ip,点击Forward

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值