find命令查找某些文件并将其拷贝到指定目录
[root@host lib]# find -name "*hbase*.jar" |xargs -i cp {} /root/aaa/
[root@host lib]# find /root/hbase-2.0.0/lib -name "*hbase*.jar" |xargs -i cp {} /root/aaa/
永久添加环境变量(影响当前用户)
不报错则成功。
显示文件的最后10行并保存
[root@host tmpdata]# tail -n 10 userlog2.txt >/root/tmpdata/log.txt
yum与rpm的区别,yum自动解决软件依赖性,而rpm不可以
删除已经安装的mysql
[root@slave4 ~]# rpm -qa |grep mysql
mysql-community-libs-5.6.51-2.el7.x86_64
mysql-community-common-5.6.51-2.el7.x86_64
mysql-community-client-5.6.51-2.el7.x86_64
[root@slave4 ~]# yum remove mysql-community-libs mysql-community-common mysql-community-client
.......
[root@slave4 ~]# rpm -qa |grep mysql
[root@slave4 ~]#
移除移除安装的配置
[root@slave4 ~]# find / -name mysql
/etc/selinux/targeted/active/modules/100/mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/share/mysql
[root@slave4 ~]# rm -rf /etc/selinux/targeted/active/modules/100/mysql
[root@slave4 ~]# find / -name mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/share/mysql
[root@slave4 ~]# rm -rf /var/lib/mysql
[root@slave4 ~]# find / -name mysql
/usr/share/mysql
[root@slave4 ~]# rm -rf /usr/share/mysql
[root@slave4 ~]# find / -name mysql
[root@slave4 ~]#
文件和目录:
# history 查看命令历史
# cd 进入 '/home' 目录
# cd .. 返回上一级目录
# cd ../.. 返回上两级目录
# cd - 返回上次所在目录
# cp file1 file2 将file1复制为file2
# cp -a dir1 dir2 复制一个目录
# cp -a /tmp/dir1 . 复制一个目录到当前工作目录(.代表当前目录)
# ls 查看目录中的文件
# ls -a 显示隐藏文件
# ls -l 显示详细信息
# ls -lrt 按时间显示文件(l表示详细列表,r表示反向排序,t表示按时间排序)
# pwd 显示当前路径
# mkdir dir1 创建 'dir1' 目录
# mkdir dir1 dir2 同时创建两个目录
# mkdir -p /tmp/dir1/dir2 创建一个目录树
# mv dir1 dir2 移动/重命名一个目录
# rm -f file1 删除 'file1'
# rm -rf dir1 删除 'dir1' 目录及其子目录内容
查看文件内容:
# cat file1 从第一个字节开始正向查看文件的内容
# head -2 file1 查看一个文件的前两行
# more file1 查看一个长文件的内容
# tac file1 从最后一行开始反向查看一个文件的内容
# tail -3 file1 查看一个文件的最后三行
查找:
# find / -name file1 从 '/' 开始进入根文件系统查找文件和目录
# find / -user user1 查找属于用户 'user1' 的文件和目录
# find /home/user1 -name *.bin 在目录 '/ home/user1' 中查找以 '.bin' 结尾的文件
# find /usr/bin -type f -atime +100 查找在过去100天内未被使用过的执行文件
# find /usr/bin -type f -mtime -10 查找在10天内被创建或者修改过的文件
# locate *.ps 寻找以 '.ps' 结尾的文件,先运行 'updatedb' 命令
# find -name '*.[ch]' | xargs grep -E 'expr' 在当前目录及其子目录所有.c和.h文件中查找 'expr'
# find -type f -print0 | xargs -r0 grep -F 'expr' 在当前目录及其子目录的常规文件中查找 'expr'
# find -maxdepth 1 -type f | xargs grep -F 'expr' 在当前目录中查找 'expr'
压缩和解压:
# bzip2 file1 压缩 file1
# bunzip2 file1.bz2 解压 file1.bz2
# gzip file1 压缩 file1
# gzip -9 file1 最大程度压缩 file1
# gunzip file1.gz 解压 file1.gz
# tar -cvf archive.tar file1 把file1打包成 archive.tar
(-c: 建立压缩档案;-v: 显示所有过程;-f: 使用档案名字,是必须的,是最后一个参数)
# tar -cvf archive.tar file1 dir1 把 file1,dir1 打包成 archive.tar
# tar -tf archive.tar 显示一个包中的内容
# tar -xvf archive.tar 释放一个包
# tar -xvf archive.tar -C /tmp 把压缩包释放到 /tmp目录下
# zip file1.zip file1 创建一个zip格式的压缩包
# zip -r file1.zip file1 dir1 把文件和目录压缩成一个zip格式的压缩包
# unzip file1.zip 解压一个zip格式的压缩包到当前目录
# unzip test.zip -d /tmp/ 解压一个zip格式的压缩包到 /tmp 目录
yum工具:
# yum -y install [package] 下载并安装一个rpm包
# yum localinstall [package.rpm] 安装一个rpm包,使用你自己的软件仓库解决所有依赖关系
# yum -y update 更新当前系统中安装的所有rpm包
# yum update [package] 更新一个rpm包
# yum remove [package] 删除一个rpm包
# yum list 列出当前系统中安装的所有包
# yum search [package] 在rpm仓库中搜寻软件包
# yum clean [package] 清除缓存目录(/var/cache/yum)下的软件包
# yum clean headers 删除所有头文件
# yum clean all 删除所有缓存的包和头文件
网络:
# ifconfig eth0 显示一个以太网卡的配置
# ifconfig eth0 192.168.1.1 netmask 255.255.255.0 配置网卡的IP地址
# ifdown eth0 禁用 'eth0' 网络设备
# ifup eth0 启用 'eth0' 网络设备
# iwconfig eth1 显示一个无线网卡的配置
# iwlist scan 显示无线网络
# ip addr show 显示网卡的IP地址
其他:
# su - 切换到root权限(与su有区别)
# shutdown -h now 关机
# shutdown -r now 重启
# top 罗列使用CPU资源最多的linux任务 (输入q退出)
# pstree 以树状图显示程序
# man ping 查看参考手册(例如ping 命令)
# passwd 修改密码
# df -h 显示磁盘的使用情况
# cal -3 显示前一个月,当前月以及下一个月的月历
# cal 10 1988 显示指定月,年的月历
# date --date '1970-01-01 UTC 1427888888 seconds' 把一相对于1970-01-01 00:00的秒数转换成时间
常用快捷键:
Ctrl + u 删除光标之前到行首的字符
Ctrl + k 删除光标之前到行尾的字符
Ctrl + c 取消当前行输入的命令,相当于Ctrl + Break
Ctrl + a 光标移动到行首(ahead of line),相当于通常的Home键
Ctrl + e 光标移动到行尾(end of line)
Ctrl + f 光标向前(forward)移动一个字符位置
Ctrl + b 光标往回(backward)移动一个字符位置
Ctrl + l 清屏,相当于执行clear命令
Ctrl + r 显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
Ctrl + w 删除从光标位置前到当前所处单词(word)的开头
Ctrl + t 交换光标位置前的两个字符
Ctrl + y 粘贴最后一次被删除的单词
Ctrl + Alt + d 显示桌面
Alt + b 光标往回(backward)移动到前一个单词
Alt + d 删除从光标位置到当前所处单词的末尾
Alt + F2 运行
Alt + F4 关闭当前窗口
Alt + F9 最小化当前窗口
Alt + F10 最大化当前窗口
Alt + Tab 切换窗口
Alt +按住左键 移动窗口(或在最下面的任务栏滚动鼠标滑轮)
[鼠标中间键] 粘贴突出显示的文本。使用鼠标左键来选择文本。把光标指向想粘贴文本的地方。点击鼠标中间键来粘贴。
[Tab] 命令行自动补全。使用 shell 提示时可使用这一方式。键入命令或文件名的前几个字符,然后按 [Tab] 键,它会自动补全命令或显示匹配键入字符的所有命令。
查看系统版本
lsb_release -a
不存在则安装:
yum -y install lsb
查看cpu核数
cat /proc/cpuinfo |grep 'physical id'
查看内存:
free -m
Linux中查找的命令主要是:grep和find。
区别:grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式进行匹配查找。
find是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间。
ps命令将某个进程显示出来
grep命令是查找
中间的|是管道命令 是指ps命令与grep同时执行
ps-ef用于查看全格式的全部进程,其中“ps”是在Linux中是查看进程的命令,“-e”参数代表显示所有进shu程,“-f”参数代表全格式。
关机命令:
shutdown -h now(立刻进行关机)
halt(立刻进行关机)
poweroff(立刻进行关机)
重启命令:
shutdown -r now(现在重新启动计算机)
reboot(现在重新启动计算机)
Linux 服务管理两种方式service和systemctl
systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程,尽可能更多进程并发启动。
systemd对应的进程管理命令是systemctl
pwd 当前目录所处的路径
vim
在一般模式之中,只要按下 i, o, a 等字符就可以进入输入模式
保存并退出
按esc键,然后输入 :wq
: 切换到底线命令模式,以在最底一行输入命令。
q 退出程序
w 保存文件
:q! 修改过的不保存离开
:w 将写入的内容保存
esc 退出输入模式,切换到命令模式
vim的时候发现:
Swap file "/etc/sysconfig/network-scripts/.ifcfg-ens192.swp" already exists!
Linux rm(英文全拼:remove)命令用于删除一个文件或者目录。
- -i 删除前逐一询问确认。
- -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
- -r 将目录及以下之档案亦逐一删除。
[root@localhost ~]# ls -a /etc/sysconfig/network-scripts/
. ifcfg-lo ifdown-ippp ifdown-ppp ifdown-TeamPort ifup-bnep ifup-isdn ifup-ppp ifup-TeamPort network-functions
.. ifdown ifdown-ipv6 ifdown-routes ifdown-tunnel ifup-eth ifup-plip ifup-routes ifup-tunnel network-functions-ipv6
ifcfg-ens192 ifdown-bnep ifdown-isdn ifdown-sit ifup ifup-ippp ifup-plusb ifup-sit ifup-wireless
.ifcfg-ens192.swp ifdown-eth ifdown-post ifdown-Team ifup-aliases ifup-ipv6 ifup-post ifup-Team init.ipv6-global
#删掉
[root@localhost ~]# rm -f /etc/sysconfig/network-scripts/.ifcfg-ens192.swp
hosts文件是linux系统中负责ip地址与域名快速解析的文件,以ASCII格式保存在/etc目录下
ctrl+z 挂起进程
jobs 查看挂起进程
fg 1 把任务1放到前台
bg 1 把任务1放到后台
Linux 系统中用户信息存放在 /etc/passwd 文件中。
切换用户需要用到指令:su user
输入 tab键补全
/opt 用户级的程序目录
/root 超级用户root的主目录
/proc 进程文件系统proc的根目录
/lib 目录下存放必要的运行库,主要是编程语言的库
/etc 目录是整个Linux系统的中心,其中包含所有系统管理和维护方面的配置文件
/bin 是Binary的缩写,这个目录存放着最经常使用的命令
/sbin s就是Super User的意思,这里存放的系统管理员使用的系统管理程序
/home 存放普通用户的主目录,在Linux中每个用户都有自己的一个目录,一般该目录是以用户的账户命名
在某个用户创建的,SSH免密码登录,公钥拷贝到另一张用户下面,在创建用户下也可以免密码登录另一个用户;另一个用户要免密码登录则需要重新配置免密码登录
安装wget
[root@master ~]# yum install wget
[datalink@master ~]$ wget -P /opt/software/ https://download.oracle.com/otn-pub/java/jdk/15.0.2+7/0d1cfde4252546c6931946de8db48ee2/jdk-15.0.2_linux-x64_bin.tar.gz?AuthParam=1611625819_0c3f09b2ec13658e890585f81c42aee0
yum install -y lrzsz
rzsz 是一款 Linux 下面的文件传输工具。
sz 发送 rz 接收
tail 和 head 加上 -n参数后 都代表输出到指定行数,tail 是指定行数到结尾,head是开头到指定行数
+数字 代表整数第几行, -数字代表倒数第几行
可使用locale -a命令查看linux系统支持多少语言。
一般来说:设置LANG和LC_AL即可,其他变量也会随之而改变。
可使用如下命令临时调整系统字符集为英语:
export LC_ALL=en_US-UTF-8
临时更改默认语言,当前立即生效 重启失效
export LANG=en_US.UTF-8
永久生效,修改配置文件
vim /etc/locale.conf
LANG=“en_US.UTF-8”
vim撤销操作:u
vim恢复操作:ctrl+r
/keyword //向光标下搜索keyword字符串,keyword可以是正则表达式
?keyword //向光标上搜索keyword字符串
n //向下搜索前一个搜素动作
N //向上搜索前一个搜索动作
替换当前行第一个str1为str2 :s
/str1/str2/
替换每一行第一个str1为str2 :%s
/str1/str2
替换当前行所有str1为str2 :s
/str1/str2/g
替换每一行第一个str1为str2 :%s
/str1/str2/g
设置系统时间为北京时间
[datalink@slave2 ~]$ timedatectl set-timezone Asia/Shanghai
yum( Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端软件包管理器。
yum 提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
yum常用命令
-
1. 列出所有可更新的软件清单命令:yum check-update
-
2. 更新所有软件命令:yum update
-
3. 仅安装指定的软件命令:yum install <package_name>
-
4. 仅更新指定的软件命令:yum update <package_name>
-
5. 列出所有可安裝的软件清单命令:yum list
-
6. 删除软件包命令:yum remove <package_name>
-
7. 查找软件包命令:yum search <keyword>
-
8. 清除缓存命令:
- yum clean packages: 清除缓存目录下的软件包
- yum clean headers: 清除缓存目录下的 headers
- yum clean oldheaders: 清除缓存目录下旧的 headers
- yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的 headers