Linux运维知识之必须熟练的基础linux命令
小标 2018-11-07 来源 : 阅读 853 评论 0

摘要:本文主要向大家介绍了Linux运维知识之必须熟练的基础linux命令,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

本文主要向大家介绍了Linux运维知识之必须熟练的基础linux命令,通过具体的内容向大家展现,希望对大家学习Linux运维知识有所帮助。

推荐:命令大全
//man.linuxde.net/
 
重要的几个热键[Tab],[ctrl]-c, [ctrl]-d 
 
[Tab]按键---具有『命令补全』不『档案补齐』的功能
[Ctrl]-c按键---让当前的程序『停掉』
[Ctrl]-d按键---通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可以用来取代exit
1、常用命令
shutdown -h now 现在马上关机shutdown -r now    现在重新启动reboot    现在重新启动su -   如果当前是普通用户,则输入这条命令切换到管理员用户(root),如果要切换到其他用户则敲入  su - 用户名 如:  su - wangxinlogout 从当前用户注销(如果是在图形界面的终端的话,则是输入  exit  命令来退出当前用户)cd     切换目录【如:cd / 表示切换到linux的根目录!!(/)表示根目录】pwd    显示用户当前在哪个路径下的命令 (这个命令用的特别多,在命令行里如果不知道当前所处文件夹,可以输入该命令 pwdclear  清空屏幕
useradd 用户名  【添加一个用户】 如:useradd wangxinpasswd 用户名    【给指定的用户名修改密码】 如:passwd wangxinuserdel 用户名    【删除一个用户,但是该用户在home文件下的子文件夹会保留】 如:userdel wangxinuserdel -r 用户名    【删除一个用户,并且删除连同该用户在home文件夹下的子文件夹】 如:userdel -r wangxin
du 度量目录文件大小du –sh 显示本文件夹整体空间大小文件数find databak -type f | wc –l  databak 目录下的文件数find . -type f | wc –l  当前目录下的文件数lsls 【列出文件和目录】 如:ls /home (列出home下面的所有文件和目录)ls -l 【列出的文件和目录以长列表显示】 如:ls -l /homels -a 【列出隐藏的文件和目录】 如:ls -a /homemkdir 【建立目录】 如:mkdir abc
rmdir 【删除空目录】 如:rmdir xiaoluo(只能删除空目录,如果该目录下还有其它文件则该命令无效)rm -rf /var/lib/mysql  #清除目录下所有数据文件!!!必须慎用!!!rm /etc/my.cnfcpcp 【复制命令】 如:cp /home/Test.java / (将home路径下的Test.java文件复制到根目录下)cp -r dir1 dir2 【-r表示递归,将dir1代表的文件夹及里面的文件复制到dir2路径那里】 如:cp -r /home/xiaoluo /(将home下的xiaoluo文件夹复制到根目录下)
mv 【移动文件和改文件名】 如:mv /home/Test.java /(表示将home下的Test.java文件移动到根目录下) mv /Test.java /Hello.java(表示将Test.java文件名改成Hello.java)mv  data/*  databak 将data目录下所有文件剪切到databak目录rm 【删除文件和目录】 如:rm /Test.java (将根目录下的Test.java删除)【注:如果该文件是个文件夹则删除不了】rm -rf *【(-r表示递归、f表示强制删除)删除所有内容,包括目录和文件夹】 如:rm -rf /home/xiaoluo(强制删除home下的xiaoluo文件夹)
touch 【建立空文件】 如:touch Test.javapwd 【显示当前所在目录】 pwdvi 编辑文本文件②输入   i 【进入到编辑状态】③敲入   esc【进入到命令行输入状态】④敲入   : 【这样就可以输入命令了。】⑤敲入   wq【保存并退出】 q!【不保存并退出】cat /etc/profile (只是查看该文件里的内容)    vi /etc/profile (查看、并且可以修改该文件里的内容)
创建新文件的两种方法vi newfile或者touch newfile只看文件头几行 head后几行 tail[root@wxcentos7 home]# head openfire_mysql.sql CREATE TABLE ofUser (  username              VARCHAR(64)     NOT NULL,只看文件后几行 tail [root@wxcentos7 home]# tail openfire_mysql.sql INSERT INTO ofID (idType, id) VALUES (26, 2);…
列出行号nl# nl log2015.log
 
ln 【建立符号链接,类似于windows中的快捷方式(需root权限或相应用户权限)】ln -s 源目标 目的目标    如:ln -s /etc/inittab /inittab(这样就会在根目录下建立一个inittab链接,该链接指向了etc目录下的inittab文件)
moreless 【显示文件内容,带分页】 如果我们的一个文件里面有很多内容,就可以使用more命令给其分页 如:more /etc/prelink.conf (给etc下面的prelink.conf文件内容进行分页显示)
| 【管道命令】 【这个命令在linux系统中用的很多】 ( | 这个命令的作用就是将 | 前面的那个命令的结果交给 | 后面的那个命令来处理)如:ls /etc | more (|前面那个命令是显示出etc文件夹下的所有文件及目录,|后面那个命令就是以分页形式显示,所以这个命令的意思就是 以分页来显示出etc目录下的所有文件和目录)
grep 【在文本中查询内容】 这条命令用的非常多 如:grep "xiaoluo" /home/Test.txt (在Test.txt文件中查询出包含有xiaoluo的那行文本信息) 如果需要显示出所查文本所在行数则使用: grep -n "xiaoluo" /home/Test.txt(查询出Test.txt文件中xiaoluo该信息所在行数以及改行所有文本)
重定向命令【> 、>>、<】如:ls -l="" etc=""> a.txt (将etc下面的列表信息写入到a.txt文件中【覆写】,如果之前不存在a.txt文件,则创建a.txt文件然后将信息写进去,如果存在a.txt文件,则会覆盖掉之前的信息)ls -al /etc>> aa.txt (将etc下面的列表信息追加到aa.txt文件信息后面)从文件中输入信息 aaa < bbb
2、查看IP
ip address show#或者ifconfig  #如果执行不了则需要: yum install net-tools
3、设置静态IP
vi /etc/sysconfig/network-scripts/ifcfg-ens33这里ifcfg-ens33文件请ls后查看
默认网络配置(DHCP设置)TYPE=EthernetBOOTPROTO=dhcpDEFROUTE=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33UUID=20d0e0a7-151c-451f-8904-63db006104eeDEVICE=ens33PEERDNS=yesPEERROUTES=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_PRIVACY=noONBOOT=yesIPADDR=192.168.43.50
静态IP配置TYPE=EthernetBOOTPROTO=noneDEFROUTE=yesPEERDNS=yesPEERROUTES=yesIPV4_FAILURE_FATAL=noIPV6INIT=yesIPV6_AUTOCONF=yesIPV6_DEFROUTE=yesIPV6_PEERDNS=yesIPV6_PEERROUTES=yesIPV6_FAILURE_FATAL=noIPV6_ADDR_GEN_MODE=stable-privacyNAME=ens33UUID=7cb5f2a3-f916-402d-bd78-efe652798112DEVICE=ens33ONBOOT=yesIPADDR=192.168.43.50NETMASK=255.255.255.0
之后重启配置/etc/rc.d/init.d/network restart或者:service network restart
关闭防火墙
systemctl stop firewalld
4、修改文件和文件夹权限属性
chmod命令文件权限属性设置 文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。
 权限范围的表示法如下: ? u User,即文件或目录的拥有者;? g Group,即文件或目录的所属群组; ? Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围;? a All,即全部的用户,包含拥有者,所属群组以及其他用户; ? r 读取权限,数字代号为“4”; ? w 写入权限,数字代号为“2”; ? x 执行或切换权限,数字代号为“1”; 
- 不具任何权限,数字代号为“0”; s 特殊功能说明:变更文件或目录的权限。 语法 chmod(选项)(参数) 选项 -c或——changes:效果类似“-v”参数,但仅回报更改的部分; -f或--quiet或——silent:不显示错误信息; -R或——recursive:递归处理,将指令目录下的所有文件及子目录一并处理; -v或——verbose:显示指令执行过程; --reference=<参考文件或目录>:把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同; <权限范围>+<权限设置>:开启权限范围的文件或目录的该选项权限设置; <权限范围>-<权限设置>:关闭权限范围的文件或目录的该选项权限设置; <权限范围>=<权限设置>:指定权限范围的文件或目录的该选项权限设置;--符号类型改变档案权限: 

其他实例:$ chmod u+x file                      给file的属主增加执行权限$ chmod 751 file                      给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限$ chmod u=rwx,g=rx,o=x file      上例的另一种形式$ chmod =r file                     为所有用户分配读权限$ chmod 444 file                   同上例$ chmod a-wx,a+r   file          同上例$ chmod -R u+r directory           递归地给directory目录下所有文件和子目录的属主分配读的权限$ chmod 4755                            设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。
5、改变文件或目录所有者
chown命令文件权限属性设置 chown命令改变某个文件或目录的所有者和所属的组,该命令可以向某个用户授权,使该用户变成指定文件的所有者或者改变文件所属的组。用户可以是用户或者是用户D,用户组可以是组名或组id。文件名可以使由空格分开的文件列表,在文件名中可以包含通配符。 只有文件主和超级用户才可以便用该命令。
-c或——changes:效果类似“-v”参数,但仅回报更改的部分; -f或--quite或——silent:不显示错误信息; -h或--no-dereference:只对符号连接的文件作修改,而不更改其他任何相关文件; -R或——recursive:递归处理,将指定目录下的所有文件及子目录一并处理; -v或——version:显示指令执行过程; --dereference:效果和“-h”参数相同; --help:在线帮助; --reference=<参考文件或目录>:把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同; --version:显示版本信息。
实例:$ chown user:market f01  //把文件f01给uesr,添加到market组
6、安装JDK1.8
# cd /usr/lib # tar –xvf /home/jdk-8-linux-x64.tar.gzvi /etc/profile在文件末尾加上##########JAVA_HOME=/usr/lib/jdk1.8.0PATH=$JAVA_HOME/bin:$PATHCLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport JAVA_HOMEexport PATHexport CLASSPATH############
7、修改主机名
一:#hostname hn1 二:修改/etc/sysconfig/network中的 HOSTNAME=name1三:修改/etc/hosts文件  127.0.0.1 name1
8、时区和时间设置
查看服务器时间:date显示日历cal修改时区:cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
修改时间:date -s 9:06:509、安装必要编译环境装wgetyum -y install wget
-- 比较推荐用这种方式yum –y groupinstall "Development Tools"
安装net-tools,不然用不了ifconfigyum install net-tools
安装gccyum install gcc gcc-c++ kernel-devel
-- 或者yum -y install gccyum -y install gcc-c++ yum install make
10、查看CPU、内存使用状况
top
11、寻找服务的文件位置
which 

[root@wxcentos7 bin]# which ifconfig/usr/sbin/ifconfig
whereis [root@wxcentos7 bin]# whereis mysqlmysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz[root@wxcentos7 bin]# whereis ifconfigifconfig: /usr/sbin/ifconfig /usr/share/man/man8/ifconfig.8.gz
12、查找文件:find 

# 与用户或用户组名有关的参数:  -user name : 列出文件所有者为name的文件  -group name : 列出文件所属用户组为name的文件  -uid n : 列出文件所有者为用户ID为n的文件  -gid n : 列出文件所属用户组为用户组ID为n的文件  # 例如:  find /home/wangxin -user wangxin # 在目录/home/wangxin中找出所有者为wangxin的文件    # 与文件权限及名称有关的参数:  -name filename :找出文件名为filename的文件  -size [+-]SIZE :找出比SIZE还要大(+)或小(-)的文件  -tpye TYPE :查找文件的类型为TYPE的文件,TYPE的值主要有:一般文件(f)、设备文件(b、c)、               目录(d)、连接文件(l)、socket(s)、FIFO管道文件(p);  -perm mode :查找文件权限刚好等于mode的文件,mode用数字表示,如0755;  -perm -mode :查找文件权限必须要全部包括mode权限的文件,mode用数字表示  -perm +mode :查找文件权限包含任一mode的权限的文件,mode用数字表示  # 例如:  find / -name passwd # 查找文件名为passwd的文件  find . -perm 0755 # 查找当前目录中文件权限的0755的文件  find . -size +12k # 查找当前目录中大于12KB的文件,注意c表示byte  find /  -size +120000k # 查找全部目录中大于100MB的文件[root@wxcentos7 bin]# find /  -size +102400k/sys/devices/pci0000:00/0000:00:0f.0/resource1_wc/sys/devices/pci0000:00/0000:00:0f.0/resource1/home/wangxin/jdk-8u131-linux-x64.rpm/home/wangxin/jdk-8u131-linux-x64.tar.gz/home/Openfire.zip
13、curl使用
下载文件到本地curl -o 1.jpg //static.oschina.net/uploads/img/201204/20230218_pNXn.jpg
打印HTML输出curl -L  //www.centos.org
# 将myfile.txt文件上传到服务器curl -u ftpuser:ftppass -T myfile.txt ftp://ftp.testserver.com
# 下载xss.php文件curl -u ftpuser:ftppass -O ftp://ftp_server/public_html/xss.php
请求数据使用GET方式请求数据,这种方式下直接通过URL传递数据可以通过 --data/-d 方式指定使用POST方式传递数据# GET curl -u username https://api.github.com/user?access_token=XXXXXXXXXX # POST curl -u username --data "param1=value1&param2=value" https://api.github.com # 也可以指定一个文件,将该文件中的内容当作数据传递给服务器端 curl --data @filename https://github.api.com/authorizations
post文件的实际例子:客户端curl操作curl -F file=@/home/new.txt //192.168.43.170:8070/webUploader/UploadServlet
或指定参数:curl --form name=myfileparam file=@/home/new.txt \  //192.168.43.170:8070/webUploader/UploadServlet

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注系统运维Linux频道!

本文由 @小标 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程