在线软件包下载:

https://debian.pkgs.org

http://rpm.pbone.net/

学习网址:

https://c.biancheng.net/shell/program/

https://www.runoob.com/linux/linux-command-manual.html


===========shell 脚本调试===========
bash 打印调试信息
bash -x install.sh


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 rocky@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机器
    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}        #批量创建文件:

dd 命令写指定大小文件----创建一个2GB的大文件。
dd if=/dev/zero of=bigfile bs=1000M count=2
dd if=/dev/zero of=bigfile bs=1G count=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 nfs@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 +12 filename :打开文件,并将光标置于12行首

 

 

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 --static 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

修改多系统默认启动系统:
vim /etc/default/grub : GRUB_DEFAULT=0 #修改为默认选项即可
sudo update-grub

 

8.文件下载安装命令:
wget | apt-get:

1)下载当前目录下所有文件
wget http://mirrors.ustc.edu.cn/ubuntu/pool/main/g/gcc-4.4/ -r -np -nd  -e robots=off
下载某一类型文件
wget http://mirrors.ustc.edu.cn/ubuntu/pool/main/g/gcc-4.4/ -r -np -nd -A .deb -e robots=off
2)断点续传
wget --continue https://example.com/linux-distro.iso        #wget 断点续传
其中:
-r:层叠递归处理
-np:不向上(url路径)递归
-nd:不创建和web网站相同(url路径)的目录结构
-A type:文件类型
-e robots=off:不考虑 robots.txt 的权限

apt-cache search ftp
apt remove xxx.deb
yum:
yum install pam-devel
yum remove pam-devel
yum search pam-devel // 在yum源搜索可用的安装包

设置yum安装包缓存设置:

vim /etc/yum.conf

# cachedir 为安装包缓存的路径
# keepcache 表示是否进行缓存: 1 是, 0 否
[main]
cachedir=/var/cache/yum/$basearch/$releasever  # 可自行修改
keepcache=1
  • 缓存的rpm包一般在: update/packages 或者 base/packages


只下载安装包:
sudo apt-get download sane // 下载软件
yum download pam-devel

apt-get 下载软件所在路径:
/var/cache/apt/archives$

更换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 软件安装

dpkg -S   mkfs.ntfs         // 查找文件来自哪个安装包
rpm -qf  `which mkfs.xfs`    // 查询文件来自哪个安装包
rpm -aq | grep font | sort  // 查询软件包排序

rpm -hvi xxx.rpm //安装软件
rpm -qa //查询安装的所有rpm软件包
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  /usr/share/perl/5.24.1/utf8.pm      // 查找文件来自哪个安装软件
dpkg -L vim               // 查找安装包位置
查询安装包信息:
apt-cache show ssh
dpkg-query -s ssh
dpkg -s ssh
apt show ssh
查询文件来自那个安装包:
dpkg-query -S /usr/bin/ssh


10.进程
查询进程:
ps -ef | grep Web* //查询Web*的进程
后台运行进程:
./test.sh &
nohub ./test.sh &


11.磁盘
查看磁盘空间:
df -h
查看目录大小
du -h
du -sh ./soft
du -h --max-depth=1 //查看当前目录下各个文件夹大小
du -sh ./*        #查看当前路径下文件夹和文件大小
查看磁盘块设备空间大小

df -T
parted -l
lsblk -f
file -s /dev/sda3


12.容器:docker
Docker是一个虚拟环境容器


13.日常命令记录:
sudo sh -c "cat /dev/null > /var/log/dpkg.log" //让整个命令都具有 root 的权限执行
rocky@linx:/mnt/sdb1/qcow2/temp$ watch -n 2 ls -l
rocky@linx:/mnt/sdb1/qcow2/temp$ timeout 20 watch -n 2 ls -l


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

查看系统所有运行的服务:
service --status-all | grep running
systemctl -a | grep running


16.用户、组命令: 
echo $PATH

  • 增加用户:useradd -m username
  • 为用户增加密码:passwd username
  • 新建工作组:groupadd groupname
  • 将用户添加进工作组:usermod -aG groupname username
  • 删除用户:userdel -r 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

==linux 显示history历史命令时间:

在/etc/profile文件的末尾,加上:

export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "

在命令行:source /etc/profile



19.bc计算器基本用法

linx:~# bc
bc 1.07.1
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006, 2008, 2012-2017 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
6+12
18
16*6
96
64/4
16
scale=3
3.25*4.56
14.820
quit


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:\Windows\system32>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
查询本地网络端口占用: netstat -lnptu | grep 6379
扫描主机端口号:nmap -p 1-65535 172.18.0.252
查询服务器多网口网线连接情况:
link ok    ---- 表示物理网线联通
no link    ---- 表示网口没有物理网线连接

root@NodeA:~# mii-tool
eth0: negotiated 1000baseT-FD flow-control, link ok
eth1: negotiated 1000baseT-FD flow-control, link ok
eth2: no link
eth3: no link
root@NodeA:~# 

 

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

27.服务器硬件信息查询:

查询cpu

Linx:~# lscpu

Linx:~# dmidecode -t processor

查询内存

  1. dmidecode -t 17
  2. dmidecode -t 17 | grep Size | grep MB

查询pci
[root@localhost ~]# lspci -vvnnk | grep -i vga
[root@localhost ~]# lspci -vvnnks 03:00.0

查询硬盘
[root@localhost ~]# smartctl --all /dev/sda

查询bios
dmidecode -t bios

查询驱动
lshw -c network
lshw -c display
lspci -vvnnks 03:00.0

 

 

 

硬件设备号查询网址
http://pci-ids.ucw.cz/
https://devicehunt.com/

 
posted on 2021-03-10 13:47  天外来客I  阅读(287)  评论(0编辑  收藏  举报