===========查看linux命令帮助===========
ls --help
man ls
虚拟机linux用户:ios pwd:111111 yao pwd:123456 root pwd:11111111
21:00 2020/12/26
1.重复执行上一次命令
>!!
2.linux系统没有回收站:文件删除要小心
3.文件夹操作:
创建文件夹:
>mkdir test
显示文件夹目录结构:
tree //默认显示所有目录结构
tree -L 2 //显示2层目录结构
删除文件夹:
>rmdir test //删除空文件夹
>rm -rf test // 删除包含内容的文件夹
>rm -rf * // 删除目录下所有文件
>rm -rf /home/abc/boke112/2019bkml
>rm -rf !(80* | adc) # 删除除某个或某些文件外其他文件
复制文件夹:
cp -r folder1 foder2
移动文件夹:
mv /home/packageA /home/packageB/
修改目录操作人权限
# 将目录/opt 及其下面的所有文件、子目录的文件主改成 liuhai
chown -R liuhai:liuhai /opt
#给目录opt设置权限
chmod 760 /opt
登录远程电脑拷贝文件夹
ssh 192.168.10.48
scp -r /home/space/music 192.168.10.48:/etc/others/ //将本地music目录复制到远程others目录下, xshell拷贝时music后不添加/目录符号
scp 192.168.10.48:/etc/yun.repos.d/* ./ //远程文件拷贝到当前目录
ssh免密码登录配置方法 fox机器
1. 495 ssh-keygen -t rsa
497 ssh-copy-id fox@127.0.0.1 # 127.0.0.1 fox电脑IP地址
498 ssh fox@127.0.0.1
yao@yao-PC:~$ cat ~/.ssh/id_rsa.pub | ssh -p 22 fox@127.0.0.1 'cat >> ~/.ssh/authorized_keys' # '' 单引号
4.===============文件操作=================
创建文件:
>touch abc.txt
>vim abc.txt
>cat >abc.txt <<EOF // 在终端界面录入文件内容,输入EOF退出文件编辑
touch a{1..5} #批量创建文件:
删除文件
>rm -f /home/abc/boke112/2019bkml/abc.conf // 删除指定路径下文件
>rm -v !("filename1"|"filename2") // 删除除了 filename1 和 filename2 之外的所有文件
查看文件:
cat abc.txt
cat -n abc.txt //显示文件行号
du -sh /etc/sysconfig // 查看文件大小
du -h --max-depth=0 * // 查看当前路径下各个目录和子文件大小
du -sh ./* #查看当前路径下文件夹和文件大小
less -m -N /root/install.log //其中-m显示百分比,-N显示行号,G转到最后一行,g可跳转到第一行
复制文件:
cp file1.txt file2.txt
复制所有文件到指定目录:
cp * /home/xguest/test/
cp -r /home/packageA/* /home/cp/packageB/
或
cp -r /home/packageA/. /home/cp/packageB/
移动文件:
mv /home/packageA/* /home/packageB/ //移动所有文件到目标文件夹
mv file1 file2
删除目录下所有内容;
rm -rf /home/packageA/*
rm file //删除文件
搜索文件:
find /etc/ -name "*.list"
whereis profile
which du
locate profile
只显示文件夹 ls -l | grep ^d
只显示文件 ls -l | grep ^-
1、只显示文件名: ls -l | grep ^[^d] | awk '{print $9}'
2、只显示文件夹名: ls -l |grep ^d | awk '{print $9}'
或者是 ls -d */
查看目录下文件数量 ll | grep "^-" | wc -l
查看目录下文件夹数量: ll | grep "^d" | wc -l
登录远程电脑拷贝文件
ssh 192.168.10.48
scp local_file 192.168.10.48:/etc/ //将本地文件拷贝到远程服务器目录
scp 192.168.10.48:/etc/yun.repos.d/* ./ //远程文件拷贝到当前目录
scp nfs1@192.168.5.105:/home/nfs1/文档2.doc ./文档3.doc
创建文件链接:
ln -s /usr/local/python3/bin/python3 /usr/bin/python3 //ln -s 源文件 创建目标文件
5.vi
vi + filename :打开文件,并将光标置于最后一行首
6.压缩命令:
压缩:tar -jcvf filename.tar.bz2 要被处理的文件或目录名称
查询:tar -jtvf filename.tar.bz2
解压:tar -jxvf filename.tar.bz2 -C 欲解压缩的目录
tar -vcf filename.tar deskup
tar -vxf filename.tar -C deskup1
tar -vczf filename.tar.gz deskup
tar -vxzf filename.tar.gz -C deskup2
zip -r -q -o deskup.zip /home/ios/桌面
file deskup.zip
unzip -q deskup.zip
unzip LinxTA-1.0.zip -d /opt/ //解压到指定目录
7.系统命令:
查询CPU信息:cat /proc/cpuinfo | grep "model name" | uniq
内存查询: free -h
查看进程信息: ps -ef
修改主机名:hostnamectl set-hostname ubuntu16
杀死指定用户所有进程:
#kill -9 $(ps -ef | grep hnlinux) //方法一 过滤出hnlinux用户进程 #kill -u hnlinux //方法二
sudo kill -9 18842
查看系统所有用户: cut -d: -f1 /etc/passwd
查看系统所有组: cut -d: -f1 /etc/group
查询操作系统版本: head -n 1 /etc/issue
查询系统内核版本: cat /proc/version
查询系统版本: ls /etc/*release
查看系统版本: cat /etc/os-release // 系统版本centos 7
lsb_release -a // 系统版本centos
uname -a // 内核版本
cat /proc/version // 内核版本
查询系统开机时间: who -b
显示当前登录用户:whoami
关机:poweroff shutdown -h now // shutdown -h 0
重启: shutdown -r now // shutdown -r 0
8.文件下载安装命令:
wget | apt-get:
sudo apt-get install XXX.deb
wget https://www.nersc.gov/assets/Trinity--NERSC-8-RFP/Benchmarks/Jan9/stream.tar
apt-cache search ftp
apt remove xxx.deb
yum:
yum install pam-devel
yum remove pam-devel
yum search pam-devel // 在yum源搜索可用的安装包
yum whatprovides libOpenIPMI.so.0 // 下载软件依赖库
只下载安装包:
sudo apt-get download sane // 下载软件
yum download pam-devel
更换yum 源:
下载163yum源:菜鸟教程
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
wget http://mirrors.163.com/.help/CentOS6-Base-163.repo
yum clean all
yum makecache
更换apt-get 源:
备份/etc/apt/sources.list 并修改/etc/apt/sources.list 源配置文件
sudo apt-get update // 更新的软件包列表信息
//下载软件离线安装包及依赖包:
yum install --downloadonly --downloaddir=/tmp nginx
sudo apt-get download `apt-cache depends model-builder | grep "依赖" | cut -d: -f2 |tr -d "<>"`
9.rpm | dpkg 软件安装
rpm -hvi xxx.rpm //安装软件
rpm -qa //查询安装的所有rpm软件包
rpm -qa | grep test //查询指定类的安装包
rpm -e //卸载rpm软件包
rpm -ql 包名 //查询rpm包安装位置
#rpm -e [package name] -nodeps //忽略依赖关系直接卸载
// deb 包安装
dpkg -i abcd.deb // 安装软件
dpkg -r abcd.deb // 卸载软件
//deb 安装包查询
dpkg -l | grep xia
dpkg -S dpkg -S /usr/share/perl/5.24.1/utf8.pm // 查找文件来自哪个安装软件
dpkg -L vim // 查找安装包位置
查询安装包信息:
apt-cache show ssh
dpkg-query -s ssh
查询文件来自那个安装包:
dpkg-query -S /usr/bin/ssh
10.进程
查询进程:
ps -a | grep Web* //查询Web*的进程
后台运行进程:
./test.sh &
nohub ./test.sh &
11.磁盘
查看磁盘空间:
df -h
查看目录大小
du -h
du -sh ./soft
du -h --max-depth=1 //查看当前目录下各个文件夹大小
du -sh ./* #查看当前路径下文件夹和文件大小
查看磁盘块设备空间大小
lsblk
12.容器:docker
Docker是一个虚拟环境容器
13.sudo临时获得root权限
sudo sh -c "cat /dev/null > /var/log/dpkg.log" //让整个命令都具有 root 的权限执行
14.rpm打包过程
fpm工具打包:http://www.ttlsa.com/linux/how-to-use-fpm-rpm/
安装fpm工具:
yum -y install ruby rubygems ruby-devel
gem install fpm
打包目录1:
fpm -s dir -t rpm -n helloworld -v 1.0.1 -C /root/ylx/fpm/
rpm -qpl hellowrld-1.0.1.x86_64.rpm //查询安装包
安装:
rpm -ivh helloworld-1.0.1.x86_64.rpm
打包方式2:指定安装路径
fpm -s dir -t rpm -n helloworld -v 1.1.0 --prefix=/opt ./hello.o // 指定安装路径/opt
rpm -ivh helloworld-1.1.0.x86_64.rpm --force //强制安装
安装包查询:
rpm -qpi ./helloworld-1.1.0.x86_64.rpm // 查询安装包内容信息
rpm -qa | grep helloworld // 查询安装包全称
rpm -ql helloworld-1.1.0.x86_64.rpm // 查询安装软件位置
15.查看系统进程和服务状态
查看服务状态:
systemctl start elasticsearch.service
systemctl stop elasticsearch.service
systemctl restart elasticsearch.service
16.用户、组命令:
echo $PATH
- 增加用户:useradd username
- 为用户增加密码:passwd username
- 新建工作组:groupadd groupname
- 将用户添加进工作组:usermod -aG groupname username
- 删除用户:userdel username
17.python下载pypi安装包
pip3 download tensorflow==1.12.0
pip download tensorflow==1.12.0
python打包命令:
pip3 wheel -w, -wheel-dir ./termcolor-1.1.0
离线whl包安装,进入安装包所在目录
pip3 install tensorflow.whl
18.修改系统环境变量:
gedit /etc/profile
最后行添加语句:
export PATH=$PATH:/usr/local/MATLAB/bin
在/etc/profile文件的末尾,加上:
export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "
在命令行:source /etc/profile
19.执行当前目录下文件:
Linux默认从PATH环境变量路径下去搜索文件,Windows会搜索当前目录,而Linux不会搜索当前目录,所有当前目录文件要加上./
./test.sh
20.mysql | MariaDB 数据库操作
1.修改默认用户密码:
mysqladmin -u root password '123456'
mysqladmin -u root -p '123456' password 'new123456'
2.登陆mysql:
mysql -u root -p
21.linux安装虚拟系统后压缩 qcow2系统文件
qemu-img convert -c -O qcow2 /var/lib/libvirt/images/centos8.0.qcow2 centos8.0.qcow2_bak
22.通过window命令行窗口拷贝LInux文件
方法1:
C:Windowssystem32>sftp -oPort=22 root@192.168.1.110
sftp> get /var/lib/libvirt/images/centos8.0.qcow2_bak G:
方法2:
scp -r /home/space/music 192.168.10.48:/etc/others/
23.windows将FAT32U盘转化位NTFS格式用来拷贝4G大文件
在cmd命令行窗口输入:CONVERT H: /FS:NTFS //H: 为U盘路径
24.网络相关:
查询本机网桥名称: ifconfig | grep qbr
查询卷分区大小: vgs
查询本地网络端口占用: netstat -lnpt | grep 6379
25.监视文件日志:新增日志会实时刷新显示
tail -f /var/log/nova/nova-compute.log
>/root/.ssh/know_hosts //清除本地ssh连接数据
查询审计日志:
tail -f /var/log/audit/audit.log
26.linux制作U盘启动盘
145 df -h
146 fdisk -l
147 mkfs.ext3 /dev/sdc
148 sync
149 dd if=linx-6.0.60.4-SFA_TS-1.0.7.20191209-amd64-DVD.iso of=/dev/sdc
148 sync