Linux常用指令

Linux相关常用指令:

列出当前目录下的所有文件夹

ls -l | grep '^d'

解压缩文件

tar -zxvf log.tar.gz -C /home/log
tar -jxvf log.tar.bz2 -C /home/log
unzip log.zip -d /home/log
压缩文件
tar -zcvf log.gz log
tar -jcvf log.bz2 log
zip -r log.zip log

文件转换编码格式

iconv -f 原本编码 -t 新编码 filename [-o newfile]

  • –list :列出 iconv 支持的语系数据
  • -f :from ,亦即来源之意,后接原本的编码格式;
  • -t :to ,亦即后来的新编码要是什么格式;
  • -o file:如果要保留原本的文件,那么使用 -o 新文件名,可以创建新编码文件。
[root@ys123 log]$ file app.2022-02-20.log 
app.2022-02-20.log: C source, UTF-8 Unicode text, with very long lines
[root@ys123 log]$ iconv -f UTF-8 -t GBK app.2022-02-20.log  -o appGBK.log
[root@ys123 log]$ file appGBK.log
appGBK.log: C source, ISO-8859 text, with very long lines

非交互式创建用户

#hadoop用户组下创建hdfs用户
useradd hdfs -g hadoop
#通过管道将创建密码
echo hdfs | passwd --stdin  hdfs
#--stdin是通过标准输入来读取密码,可通过使用管道来处理

在这里插入图片描述

权限配置

将log目录的拥有者和用户组设置给ys用户
chown ys:ys log/

将a.txt文件的所有用户都有执行权限
chmod +x a.txt
如果时新建的文件,所有者和所有者组都有可读可写权限
也可以chmod 755 a.txt
在这里插入图片描述

将a.txt文件的第二行打印出来

sed -n '2p' a.txt

shell脚本选择性获取参数

# 如果是输入的日期按照取输入日期;如果没输入日期取当前时间的前一天
if [ -n "$1" ] ;then
    do_date=$1
else 
    do_date=`date -d "-1 day" +%F`
fi

shell提交了一个脚本,进程号不知道了,如何kill掉

ssh $i "ps -ef | grep file-flume-kafka | grep -v grep | awk '{print \$2}' | xargs kill -9"

shell中单引号、双引号和反引号的区别

  • 单引号不取变量值
  • 双引号取变量值
  • 反引号`执行引号中的命令
  • 双引号内嵌单引号,取出变量值,如果要不取出加\转义$
  • 单引号内嵌双引号,不取出变量值

关闭单个服务器的防火墙,关闭防火墙开机自启

systemctl stop firewalld
systemctl disable firewalld.service

卸载虚拟机自带的JDK

rpm -qa | grep -i java | xargs -n1 rpm -e --nodeps
#rpm -qa:查询所安装的所有rpm软件包
#grep -i:忽略大小写
#xargs -n1:表示每次只传递一个参数
#rpm -e –nodeps:强制卸载软件

将node1服务器下/opt/jdk/下的所有目录文件传送到node2服务器下/opt/下

[ys@node1 ~]$ scp -r /opt/jdk1.8.0_212 ys@node2:/opt/

node1服务器同步node2服务器下的jdk目录下的文件

[ys@node1 module]$ rsync -av /opt/jdk/ ys@node2:/opt/jdk/
#-a	归档拷贝
#-v	显示复制过程

ssh免密登录配置

场景:在需要进行集群分发文件和脚本的时候
原理:在这里插入图片描述
node1服务器

  1. cd 到~目录
  2. ls -a 找到.ssh文件并进入
  3. ssh-keygen -t rsa 后会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
  4. 依次将公钥拷贝到要免密登录的目标机器上
    [ys@node1 .ssh]$ ssh-copy-id node1
    [ys@node1 .ssh]$ ssh-copy-id node2
    [ys@node1 .ssh]$ ssh-copy-id node3
  5. node2和node3需要上面步骤操作后即可免密登录

安装包下载并安装

wget https://repo.huaweicloud.com/grafana/7.4.3/grafana-7.4.3-1.x86_64.rpm
rpm -ivh grafana-7.4.3-1.x86_64.rpm

jps

列出使用Java虚拟机的进程名字和pid
如果不清楚该进程是什么可以使用jps -l详细展示主类的全类名路径或者应用程序jar包的全类名路径


持续补充中...

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值