linux|我在工作中用到的Linux命令

大部分程序员可能只停留在写代码阶段。很少有可能接触「Linux」,最多就是看个日志。然而我觉得「Linux」操作对程序员很重要。是提升程序员的一个重要门槛。
Linux初始化 初次安装「Linux」系统,我们需要做一些初始化的操作,我把这些命令写到一个脚本里。每次需要就可以快速执行了。

echo '\n ------------Linux信息初始化开始--------------------- \n'; sleep 3; ##查看系统的信息 echo '\n 查看CPU核心数 \n'; lscpu sleep 10; echo '\n 查看内存大小 \n'; free sleep 5; echo '\n 查看磁盘空间大小 \n'; df -h | grep '/home' sleep 3; ##安装一些常用的命令工具 echo '\n ------------------开始安装------------------------ \n'; sleep 3; echo '\n begin to install net-tools \n'; yum install -y net-tools; echo '\n yum finish install net-tools \n'; sleep 3; echo '\n begin to install -y tree \n'; yum install -y tree; echo '\n yum finish install -y tree \n'; sleep 3; echo '\n begin to install -y wget \n'; yum install -y wget; echo '\n yum finish install -y wget \n'; sleep 3; echo '\n begin to install -y man \n'; yum install -y man; echo '\n yum finish install -y man \n'; sleep 3; echo '\n begin to install -y telnet \n'; yum install -y telnet; echo '\n yum finish install -y telnet \n'; sleep 3; echo '\n begin to install -y ftp \n'; yum install -y ftp; echo '\n yum finish install -y ftp \n'; sleep 3; echo '\n begin to install -y lrzsz,dos2unix,bind-utils,gdb,python-devel,python-mako,Deve Tools \n'; yum install -y lrzsz; sleep 3; yum install -y dos2unix; sleep 3; yum install -y bind-utils; sleep 3; yum install -y gdb; sleep 3; yum install -y python-devel; sleep 3; yum install -y python-mako; sleep 3; yum groupinstall -y 'Development Tools'; sleep 3; echo '\n yum finish install -y lrzsz,dos2unix,bind-utils,gdb,python-devel,python-mako,Deve Tools \n'; sleep 3; echo '\n begin to stop&disable service \n'; systemctl stop firewalld.service; systemctl disable firewalld.service systemctl stop postfix.service systemctl disable postfix.service echo '\n yum finish stop&disable service \n'; sleep 3; echo '\n -------当前主机ip---------------\n'; /sbin/ifconfig -a | grep 10.174. | awk '{print $2}' sleep 5; echo 'all plugin had installed completed'; echo '-----------开始重启系统------------'; sleep 3; reboot read;

修改虚拟机为静态ip 「第一步:进入网络配置文件目录」 首先,确保在root用户下进行操作。进入网络配置文件network-scripts目录下。
「第二步:找到我们需要修改的配置文件」 使用ls命令,列出该目录下的文件。其中"ifcfg-ens33"(红框)的文件,为我们需要修改的网络配置文件。
linux|我在工作中用到的Linux命令
文章图片


「第三步:修改配置文件」 使用vim命令(vi命令也可以),对文件进行配置,我们需要修改BOOTPROTO="static"也就是将dhcp改为static,修改ONBOOT="yes"意思是将网卡设置 为开机启用,同时在文字下方添加
IPADDR=192.168.0.230 #静态IP GATEWAY=192.168.0.1 #默认网关 NETMASK=255.255.255.0 #子网掩码 DNS1=192.168.0.1 #DNS 配置 DNS2=8.8.8.8 #谷歌地址

linux|我在工作中用到的Linux命令
文章图片


第一个框为修改内容,第二个框为需要添加的内容。ESC+WQ,保存退出!
「第四步:重启网络服务」 使用service network restart命令,重启网络服务。
linux|我在工作中用到的Linux命令
文章图片


Linux 命令 软连接(ln -s
#创建软连接 chown -R deploy.deploy deploy/ ln -s /disk2/deploy deploy

创建用户(useradd
很多人喜欢将程序部署在root用户下面,这样做是不对的,应该自己创建一个用户。
#创建用户(在指定不目录下创建用户): useradd -d /data/home/comet -g ngboss -s /bin/bash comet #给创建的用户追加密码: echo "1q1w1e1r" | passwd --stdin comet

获取进程数(wc -l
ps -ef | grep $PROCESS_NAME | grep $PROCESS_PARM | grep -v $0 | grep -v /bin/sh | grep -v grep | wc -l

修改主机名称
#修改主机名称 hostnamectl set-hostname test186

对所有用户设置自动注销功能
在该公司连接「Linux」系统时,发现一段时间不操作,就会与系统断开连接。后来了解了是怎么设置的。
首先,以root用户登录系统,输入 vi /etc/profile 命令,编辑profile文件。 查找TMOUT,若没有,则可以在文件最后添加如下语句: TMOUT=300 export TOMOUT 如果查找到了,直接设置时间。 300表示自动注销的时间为300秒。 编辑好文件后,保存,退出,重新登录,设置生效。

替换
vim编辑文件中
:s/vivian/sky/ 替换当前行第一个 vivian 为 sky :%s/vivian/sky/g(等同于 :g/vivian/s//sky/g) 替换每一行中所有 vivian 为 sky

文件查看
#【一】从第3000行开始,显示1000行。即显示3000~3999行 cat filename | tail -n +3000 | head -n 1000 #【二】显示1000行到3000行 cat filename| head -n 3000 | tail -n +1000 #注意两种方法的顺序 #分解: tail -n 1000:显示最后1000行 tail -n +1000:从1000行开始显示,显示1000行以后的 head -n 1000:显示前面1000行 #通过文件内容查找文件名 find . -name '*.jar' | xargs grep 'com.ailk.mq.client.config.ClientRuntimeEnv' #搜索文件 [root@lvshen ~]# locate install.log #find / -name 全盘查找 /root/install.log /root/install.log.syslo

打包解压
打包:tar –cvf xxx.tar ./* 打包并且压缩:tar –zcvf xxx.tar.gz ./* 解压:tar –xvf xxx.tar

赋权操作(chmod
chmod 变更文件或目录的权限。 chmod 755 a.txt chmod u=rwx,g=rx,o=rx a.txt chmod 000 a.txt / chmod 777 a.txt chown 变更文件或目录改文件所属用户和组 chown u1:public a.txt :变更当前的目录或文件的所属用户和组 chown -R u1:public dir :变更目录中的所有的子目录及文件的所属用户和组

移动(mv
#移动目录 zk@hadoop-node01 ~ $ ls jdk-8u152-linux-x64.tar.gz support zk-20171226.tar.gz zk@hadoop-node01 ~ $ mv jdk-8u152-linux-x64.tar.gz support zk@hadoop-node01 ~ $ ls support zk-20171226.tar.gz zk@hadoop-node01 ~ $ cd support/ zk@hadoop-node01 ~/support $ ls jdk-8u152-linux-x64.tar.gz #重命名 zk@hadoop-node01 ~/support $ mv jdk1.8.0_152/ jdk zk@hadoop-node01 ~/support $ ls jdk

查看命令是否执行成功
查看命令知否执行成功,会返回1 echo $?

复制(cp
#复制文件,复制到one目录下面,/前面的'.'表示当前路径 [root@lvshen ~]# cp install.log ./one #将one目录及其下面的文件赋值到two目录下面 [root@lvshen ~]# cp -r one two

远程拷贝(scp
#把当前目录的hbase.tar.gz 拷贝到远程机器的hbase用户下面 scp hbase.tar.gz hbase@10.131.xxx.55:/home/hbase

动态输出日志(tail -f
动态显示日志,默认显示10行 tail -f filename

将控制台日志输出到文件里
nohup ./run.sh > ~/logs/steven-0130.log 2>&1 &

创建ssh公钥
#在本地生成公钥和密钥: ssh-keygen -t rsa #将本机生成的公钥发送到服务器上(建立信任关系): ssh-copy-id -i C:/Users/UserName/.ssh/id_rsa.pub root@server_ip #UserName是电脑的用户名 #测试ssh远程登录是否成功: ssh root@server_ip

创建目录(mkdir
mkdir /etc/redis

切换登录(su
切换登录: ssh -l test -p 22 192.168.19.128 su – 用户名

好了,以上就是一些我在工作中所用到的「Linux」命令,下次我会介绍一些有趣的「shell」脚本。谢谢你的阅读。
往期推荐
  • 我写出这样干净的代码,老板直夸我
  • 云南丽江旅游攻略
  • 使用ThreadLocal怕内存泄漏?
  • Java进阶之路思维导图
  • 程序员必看书籍推荐
  • 3万字的Java后端面试总结(附PDF)
扫码二维码,获取更多精彩。或微信搜Lvshen_9,可后台回复获取资料
1.回复"java" 获取java电子书;2.回复"python"获取python电子书;3.回复"算法"获取算法电子书;4.回复"大数据"获取大数据电子书;5.回复"spring"获取SpringBoot的学习视频。6.回复"面试"获取一线大厂面试资料7.回复"进阶之路"获取Java进阶之路的思维导图8.回复"手册"获取阿里巴巴Java开发手册(嵩山终极版)9.回复"总结"获取Java后端面试经验总结PDF版10.回复"Redis"获取Redis命令手册,和Redis专项面试习题(PDF)11.回复"并发导图"获取Java并发编程思维导图(xmind终极版)

另:点击【我的福利】有更多惊喜哦。
【linux|我在工作中用到的Linux命令】linux|我在工作中用到的Linux命令
文章图片

    推荐阅读