Linux 常用命令

常见命令

whereis 查看命令的可执行文件所在位置
type cd  命令类型,内部和外部命令
echo  $PATH  输出内容
man ifconfig 帮助文档,查看外部命令帮助文档
help cd 查看内部命令帮助文档
a=1 echo $a
arr=(1 2 3)echo ${arr[0]} 
echo $$ 输出当前进程号
echo “123”  >> file:123写入file文件
hash 存储命令,提高查询命令效率
df -h :磁盘内存使用情况
du -h dir :查看文件目录内存使用情况
mkdir -p a/b/c:级联创建文件夹
mkdir a/{1,2,3}dir
mv dir/ dir2 :重命名目录
mv file file1 :重命名文件
mv file /a :移动文件
cp -r a  b/ :移动a文件夹下所有东西到b目录
cp  /a/b.txt  . : a目录下的b.txt 文件拷贝到当前目录
ln file file1 :创建文件硬链接(两个文件木有影响)
ls file file1 :创建文件软链接(file会影响file1)
stat file:查看文件详细信息
touch file:创建文件、同步文件的所有时间
more + 空格:按页查看,不能往前看
less + 空格:往后按页查看
less + b :往前按页查看
head -5 file:查看前5行数据
tail -5 file:查看最后5行数据
cat file | head -5
echo "/" |xargs ls -l :/  作为变量传入 ls -l  命令中执行
head -5 file |tail -5 :输出第五行数据

vi 相关命令

vi +10 file : 编辑文件直接定位到10行,如果只有 +,直接定位到末尾
编辑模式:
方向 --->    h:向左   l:向右   j:向下   k:向上
单词 --->    w:下一个单词的词首  b:调至当前或者上一个单词的词首  e :调至当前或者上一个单词的词尾
行内 --->    0:绝对行首  ^:行首的第一个非空字符   $:绝对行尾
行间 --->    G:文件末尾      3G:第三行      gg:文件开头
翻屏--->     ctrl + f :向下翻页      ctrl + b :向上翻页  
删除和替换单词-->  x:删除光标位置字符  3x:删除光标位置开始3个字符  r
:替换光标位置字符  dd:删除光标所在行   3 dd:删除光标所在行后的3行   dG:删除光标所在行后的所有内容   dw:删除单词
复制黏贴-->  yy:复制行  yw:复制单词  p:当前位置后黏贴  P:当前位置之上黏贴行   :.,$-1y:复制光标到倒数第二行的所有内容
撤销-->  u :撤销       ctrl + r:恢复      .:重复上一步操作
输入模式:
i:在当前光标所在字符的前面输入     a:在当前光标所在字符的后面输入
o:在当前光标所在行的下方创建一行    O:在当前光标所在行的上方创建一行 
A:移动到当前光标所在行的行尾
末行模式: esc -> :
set nu (set  number):显示行号     set nonu (set nonumber):隐藏行号
set readonly:文件只读模式
/a(?a):查找 a ,/(向下查找),? (向上查找), n 向下查找下一个, N 向上查找上一个
! ls -l /a/b :查看  /a/b 目录
s/a/b : 光标所在行中的 a(第一个匹配的) 修改为 b     
s/a/b/g : 光标所在行中的所有 a(区分大小写) 修改为 b
s/a/b/gi : 光标所在行中的所有 a(忽略大小写) 修改为 b
.,+2s/a/b/gi : 光标所在行的接下来3行中的所有 a(忽略大小写) 修改为 b, . 表示当前光标所在行
%s/a/b/gi(0,$s/a/b/gi) : 文件中的所有 :a(忽略大小写) 修改为 b, % 表示全文,$ 表示末尾行
删除内容:
0,$d:删除全文
.,+2d(光标必须在第一行):删除前三行         1,3d:删除前三行  
3,5d:删除3-5行         $-1d:删除倒数第二行    1,$-1d:删除除最后一行的所有内容
复制:
1,3y:复制1-3行             0,,$y:复制所有内容

grep 管道相关命令

grep  "[0-9]" file :查找数字的行  
grep "[ac]"  file : 查找包含 a 或者 c 的行
grep  “[0-9]\{3\}” (-E “[0-9]{3}” ) file :查找包含三位数的行
grep "\<hello\>"  file :包含 hello 单词的行
grep  -E “([^0-9][0-9]|^[0-9])[0-9]([0-9][^0-9]|[0-9]$)”  file :查找三位数的行
grep "^\<hello\>"  file :包含以 hello 单词为首的行
grep -E "a{2,3}" file:包含 a 2次或者 3次 的行
grep -E "(a.*)(b.*).*1.*2" file:包含 a b a b ....的行

cut: d(自定义分隔符)、s(不显示没有分隔符的行)、f(选择显示的列)
cut  -d  ‘ ’  -f1(-f1,2   -f1-3)  file :以空格分隔行,然后显示指定列数据(包含没有分隔符的行)
cut  -d  ‘ ’  -f1(-f1,2   -f1-3)  -s file :以空格分隔行,然后显示指定列数据(不包含没有分隔符的行)

sort: t(自定义分隔符)、k(选择排序的列)、f(忽略大小写)、n(按数值排序)、r(倒叙)、u(合并相同行)
sort -t  ‘ ’  -k1  -u -f :按照第一列排序(合并忽略大小写重复列)
sort -t  ‘ ’  -k2  -n -r :按照第二列数值倒叙排列

wc:  l(行数)、w(单词数)、c(字符数)
wc  file : file 文件统计信息  
wc -c file: file 字符数      cat file | wc -l  :  file 总行数

sed  行编辑器

i:对原文件修改     n :屏蔽静默显示     p:显示行数据    
a:每行下面显示行内容    i:每行上面显示行内容    c:替换每行内容
sed  -n  “2p” file:显示第二行数据
sed “3d” file:显示除了第三行之外的所有数据
sed  -i  “3d” file:删除第三行数据,并保存到原文件中
sed  “atest” file:在每行下面显示test行数据
sed  “itest” file:在每行上面显示test行数据
sed  “ctest” file:每行数据都替换为 test
sed  -i  “s/a/b/” file:a 都替换为 b 并更新到 file 文件中
\()  :  反向符,用于解决重复内容替换  ,实例如下:

sed -i "s/id:[0-9]:init/id:6:init/" file   <=>  sed -i "s/\(id:\)[0-9]\(:init\)/\16\2/" file
   
   

使用变量动态替换文件内容:

var=5   ->   echo $var  ->  sed -i "s/\(id:\)[0-9]\(:init\)/\1$var\2/" file
   
   

修改配置文件中的ip地址:

sed  "s/\(IPADDR=\([0-9]\?[0-9][0-9]\?\.\)\{3\}\).*/\188/"  file
   
   

awk  文本分析工具,默认使用 空格 和 tab 分隔

NR:记录数,即行号    NF:域(列)的个数    ORS:输出记录分隔符    OFS:输出域分隔符
FS:设置输入域分隔符,等价于命令行 -F 选项
支持函数:print 、split 、substr、sub、gsub
awk  -F  ‘{pattern  + action}’  {filenames}
awk -F ':'  '{print $1}'  file  : 以 : 为分隔符,输出第一列的值
awk -F ':'  'BEGIN  {print "name,age"}  {print $1 "," $2}  END { {print "end"}'  file  : 第一行前面加上 name,age,输出 name 和 age 的值并使用 , 分隔开,最后输出 end 作为结束
awk  '/root/'  '{print $0}'  file  :  输出所有包含root的行
awk -f  file  file1: 执行 file 脚本文件

用户与权限  

#:管理员   $:普通用户  
useradd  a: 创建用户 a      passwd a:用户 a 设置密码
userdel  a :删除用户 a    
彻底删除用户 a :  1、 rm -rf  a/    2、 cd  /var/spool/mail  rm -rf  a

mkdir  b :创建 b 目录
groupadd  b : 创建用户组 b
usermod -G b a: a 用户加入 用户组 b  
id  a : 查看用户 a 组织信息
chown  root:b  b/ :将 b 文件夹属主修改为 组b(原来是root创建的)
chmod g+w b/:给组 b 添加写权限
chmod  o-r o-x : 给其他人删除读和执行的权限

yum 安装

yum list installed |grep java : 查看当前系统是否已安装JDK

yum -y list java* : 列出yum库中JDK所有版本

yum -y install java-1.8.0-openjdk* : 安装具体JDK某个版本

jdk  /etc/profile 环境变量配置:

JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.275.b01-1.el8_3.x86_64
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH

jps 命令安装:

yum list | grep jdk-devel

yum -y install java-1.8.0-openjdk-devel.x86_64

解压文件

tar -zxf apache-zookeeper-3.6.2.tar.gz -C /home

时钟同步

yum install -y chrony

systemctl start chronyd

systemctl enable chronyd

/etc/chrony.conf 文件中增加  pool ntp.ntsc.ac.cn  iburst 同步器配置

clock -w

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值