目录
1.1 系统命令
1 runlevel # 查看当前的运行级别 2 systemctl status firewalld # 开启网络服务功能 3 stop # 关闭 4 restart # 重启 5 reload # 重载 6 reboot # 重启 7 halt # 关机 8 poweroff # 关机
1.2 文件操作
1 cat # 在命令提示符下查看文件内容 2 more # 在命令提示符中分页查看文件内容 3 less # 命令行中查看文件可以上下翻页反复浏览 4 head -n 5 /etc/passwd # 命令行中查看文件头几行 5 tail -n 5 /etc/passwd # 命令行中查看文件尾几行 6 wc # 统计文件的单词数 行数等信息
1.3 目录管理
1 pwd # 查看你当前所在的目录 2 cd # 切换目录 3 ls # 查看显示目录的内容 4 du # 统计目录和文件空间的占用情况 5 mkdir # 创建新目录 6 touch # 创建文件 7 rm # 删除文件 8 ln # 创建硬链接 9 ln -s # 创建软链接 10 cp # 复制文件或目录 11 mv # 移动文件或目录 12 which # 查看linux命令所在的目录
-r 就是向下递归,不管有多少级目录,一并删除
-f 就是直接强行删除,不作任何提示的意思
删除文件夹实例:
rm -rf /var/log/httpd/access
将会删除/var/log/httpd/access目录以及其下所有文件、文件夹
删除文件使用实例:
rm -f /var/log/httpd/access.log
将会强制删除/var/log/httpd/access.log这个文件
1.4 账号与权限
1 '''1.组管理''' 2 groupadd group_name # 创建一个新用户组 3 groupdel group_name # 删除一个用户组 4 groupmod -n new_group_name old_group_name # 重命名一个用户组 5 6 '''2.用户管理''' 7 useradd zhangsan # 创建账户张三 8 passwd zhangsan # 给用户设置密码 9 userdel -r zhangsan # 删除张三及他的宿主目录 10 11 '''3.用户组管理''' 12 gpasswd -a zhangsan root # 将张三用户加入root组 13 groups zhangsan # 确认zhangsan用户在root组 14 gpasswd -d lisi root # 将李zhangsan户从root组中删除 15 16 '''4.权限管理''' 17 chown -R zhangsan /aaa # 将文件夹/aaa的多有者修改为zhangsan 18 chown root:root /aaa # 将/aaa文件夹的属主和属组都改成root 19 chmod 777 /aaa # 给文件夹文件/aaa设置权限为777
1.5 linux网络相关命令
- 基础命令
1 ifconfig # 查看网卡信息 2 ip addr # 查看网卡信息 3 hostname # 设置主机名 4 route -n # 查看路由表和网关信息 5 netstat # 查看本机开启端口号 6 ping # 测试网络连通性 7 traceroute # 路由跟踪 8 nslookup # 域名解析测试 9 ifdown # 禁用网卡 10 ifup # 启用网卡
- 路由相关命令
1 route add -net # 加静态路由 2 route del -net # 删除静态路由 3 route add default gw # 加网关 4 route del default gw # 删网关
1.6 linux查看进程命令
1 1.查进程 2 ps命令查找与进程相关的PID号: 3 ps a 显示现行终端机下的所有程序,包括其他用户的程序。 4 ps -A 显示所有程序。 5 ps c 列出程序时,显示每个程序真正的指令名称,而不包含路径,参数或常驻服务的标示。 6 ps -e 此参数的效果和指定"A"参数相同。 7 ps e 列出程序时,显示每个程序所使用的环境变量。 8 ps f 用ASCII字符显示树状结构,表达程序间的相互关系。 9 ps -H 显示树状结构,表示程序间的相互关系。 10 ps -N 显示所有的程序,除了执行ps指令终端机下的程序之外。 11 ps s 采用程序信号的格式显示程序状况。 12 ps S 列出程序时,包括已中断的子程序资料。 13 ps -t<终端机编号> 指定终端机编号,并列出属于该终端机的程序的状况。 14 ps u 以用户为主的格式来显示程序状况。 15 ps x 显示所有程序,不以终端机来区分。 16 17 最常用的方法是ps aux,然后再通过管道使用grep命令过滤查找特定的进程,然后再对特定的进程进行操作。 18 ps aux | grep program_filter_word,ps -ef |grep tomcat 19 20 ps -ef|grep java|grep -v grep 显示出所有的java进程,去处掉当前的grep进程。 21 22 2.杀进程 23 使用kill命令结束进程:kill xxx 24 常用:kill -9 324 25 Linux下还提供了一个killall命令,可以直接使用进程的名字而不是进程标识号,例如:# killall -9 NAME 26 27 3.进入到进程的执行文件所在的路径下,执行文件 ./文件名 28 29 附: 30 31 这是本人花了两天时间整理得来的,一些最常用的地球人都知道的命令就省去啦!最后提供pdf手册下载 32 33 1. 更改档案拥有者 34 命令 : chown [-cfhvR] [--help] [--version] user[:group] file... 35 功能 : 更改文件或者文件夹的拥有者 36 参数格式 : 37 user : 新的档案拥有者的使用者 IDgroup : 新的档案拥有者的使用者群体(group) 38 -c : 若该档案拥有者确实已经更改,才显示其更改动作 39 -f : 若该档案拥有者无法被更改也不要显示错误讯息 40 -h : 只对于连结(link)进行变更,而非该 link 真正指向的档案 41 -v : 显示拥有者变更的详细资料 42 -R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更) 43 44 例如:chown -R oracle:oinstall /oracle/u01/app/oracle 45 更改目录拥有者为oracle 46 47 2. 修改权限 48 命令:chmod (change mode) 49 功能:改变文件的读写和执行权限。有符号法和八进制数字法。 50 选项:(1)符号法: 51 命令格式:chmod {u|g|o|a}{+|-|=}{r|w|x} filename 52 u (user) 表示用户本人。 53 g (group) 表示同组用户。 54 o (oher) 表示其他用户。 55 a (all) 表示所有用户。 56 + 用于给予指定用户的许可权限。 57 - 用于取消指定用户的许可权限。 58 = 将所许可的权限赋给文件。 59 r (read) 读许可,表示可以拷贝该文件或目录的内容。 60 w (write) 写许可,表示可以修改该文件或目录的内容。 61 x (execute)执行许可,表示可以执行该文件或进入目录。 62 63 (2)八进制数字法: 64 命令格式:chmod abc file 65 其中a,b,c各为一个八进制数字,分别表示User、Group、及Other的权限。 66 4 (100) 表示可读。 67 2 (010) 表示可写。 68 1 (001) 表示可执行。 69 若要rwx属性则4+2+1=7; 70 若要rw-属性则4+2=6; 71 若要r-x属性则4+1=5。 72 73 例如:# chmod a+rx filename 74 让所有用户可以读和执行文件filename。 75 # chmod go-rx filename 76 取消同组和其他用户的读和执行文件filename的权限。 77 # chmod 741 filename 78 让本人可读写执行、同组用户可读、其他用户可执行文件filename。 79 # chmod -R 755 /home/oracle 80 递归更改目录权限,本人可读写执行、同组用户可读可执行、其他用户可读可执行 81 82 3. 修改文件日期 83 命令:touch 84 格式:touch filenae 85 功能:改变文件的日期,不对文件的内容做改动,若文件不存在则建立新文件。 86 例如:% touch file 87 88 4. 链接文件 89 命令:ln (link) 90 格式:ln [option] filename linkname 91 ln [option] directory pathname 92 功能:为文件或目录建立一个链。其中,filename和directory是源文件名和 93 源目录名;linkname和pathname分别表示与源文件或源目录名相链接的 94 文件或目录。 95 选项:-s 为文件或目录建立符号链接。不加-s表示为文件或目录建立硬链接 96 注释:链接的目地在于,对一个文件或目录赋予两个以上的名字,使其可以出 97 现在不同的目录中,既可以使文件或目录共享,又可以节省磁盘空间。 98 例如:% ln -s filename linkname 99 100 5. 显示日期 101 命令:date 102 例如:% date 103 104 6. 显示日历 105 命令:cal (calendar) 106 格式:cal [month] year 107 功能:显示某年内指定的日历 108 例如:% cal 1998 109 110 7. 显示文件头部 111 命令:head 112 格式:head [option] filename 113 功能:显示文件的头部 114 选项:缺省 显示文件的头10行。 115 -i 显示文件的开始 i行。 116 例如:% head filename 117 118 8. 显示文件尾部 119 命令:tail 120 格式:tail [option] filename 121 功能:显示文件的尾部 122 选项:缺省 显示文件的末10行。 123 -i 显示文件最后 i行。 124 +i 从文件的第i行开始显示。 125 例如:% tail filename 126 127 9. 显示用户标识 128 命令:id 129 格式:id [option] [user] 130 功能:显示用户标识及用户所属的所有组。 131 选项:-a 显示用户名、用户标识及用户所属的所有组 132 注释: 133 例如:% id username 134 135 10. 查看当前登录的用户 136 命令:users 137 138 11. 显示都谁登录到机器上 139 命令:who 140 格式:who 141 功能:显示当前正在系统中的所有用户名字,使用终端设备号,注册时间。 142 例如:% who 143 144 12. 显示当前终端上的用户名 145 命令:whoami 146 格式:whoami 147 功能:显示出当前终端上使用的用户。 148 例如:% whoami 149 150 13. 寻找文件 151 命令:find 152 格式:find pathname [option] expression 153 功能:在所给的路经名下寻找符合表达式相匹配的文件。 154 选项:-name 表示文件名 155 -user 用户名,选取该用户所属的文件 156 -size 按大小查找,以block为单位,一个block是512B 157 -mtime n 按最后一次修改时间查找,选取n天内被修改的文件 158 -perm 按权限查找 159 -type 按文件类型查找 160 -atime 按最后一次访问时间查找 161 162 例如:% find ./ -name '*abc*' -print 163 164 14. 搜索文件中匹配符 165 命令:grep 166 格式:grep [option] pattern filenames 167 功能:逐行搜索所指定的文件或标准输入,并显示匹配模式的每一行。 168 选项:-i 匹配时忽略大小写 169 -v 找出模式失配的行 170 171 例如:% grep -i 'java*' ./test/run.sh 172 173 15. 统计文件字数 174 命令:wc [option] filename 175 功能:统计文件中的文件行数、字数和字符数。 176 选项:-l 统计文件的行数 177 -w 统计文件的单词数 178 -c 统计文件的字符数 179 注释:若缺省文件名则指标准输入 180 例如:% wc -c ./test/run.sh 181 182 16. 显示磁盘空间 183 命令:df (disk free) 184 格式:df [option] 185 功能:显示磁盘空间的使用情况,包括文件系统安装的目录名、块设备名、总 186 字节数、已用字节数、剩余字节数占用百分比。 187 选项: 188 -a:显示全部的档案系统和各分割区的磁盘使用情形 189 -i:显示i -nodes的使用量 190 -k:大小用k来表示 (默认值) 191 -t:显示某一个档案系统的所有分割区磁盘使用量 192 -x:显示不是某一个档案系统的所有分割区磁盘使用量 193 -T:显示每个分割区所属的档案系统名称 194 -h: 表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。 195 注释: 196 例如:% df -hi 197 198 17. 查询档案或目录的磁盘使用空间 199 命令:du (disk usage) 200 格式:du [option] [filename] 201 功能:以指定的目录下的子目录为单位,显示每个目录内所有档案所占用的磁盘空间大小 202 选项: 203 -a:显示全部目录和其次目录下的每个档案所占的磁盘空间 204 -b:大小用bytes来表示 (默认值为k bytes) 205 -c:最后再加上总计 (默认值) 206 -s:只显示各档案大小的总合 207 -x:只计算同属同一个档案系统的档案 208 -L:计算所有的档案大小 209 -h: 表示档案系统大小使用 GB、MB 等易读的格式。 210 例如:% du -a 211 % du -sh /etc 只显示该目录的总合 212 % du /etc | sort -nr | more 统计结果用sort 指令进行排序, 213 sort 的参数 -nr 表示要以数字排序法进行反向排序。 214 215 18. 显示进程 216 命令:ps 217 格式:ps [option] 218 功能:显示系统中进程的信息。包括进程ID、控制进程终端、执行时间和命令。 219 选项: 220 -a 显示所有进程信息 221 -U uidlist 列出这个用户的所有进程 222 -e 显示当前运行的每一个进程信息 223 -f 显示一个完整的列表 224 -x 显示包括没有终端控制的进程状况 。 225 注释: 226 例如:% ps -ef 227 % ps -aux 然后再利用一个管道符号导向到grep去查找特定的进程,然后再对特定的进程进行操作。 228 229 19. 终止进程 230 命令:kill 231 格式:kill [option] pid 232 功能:向指定的进程送信号或终止进程。kill指令的用途是送一个signal给某一个process, 233 因为大部份送的都是用来杀掉 process 的 SIGKILL 或 SIGHUP ,因此称为 kill 234 选项:-9 强行终止进程 235 注释:pid标示进程号,可由ps命令得到。 236 例如:% kill -9 pid 237 你也可以用 kill -l 来察看可代替 signal 号码的数目字。kill 的详细情形请参阅 man kill。 238 239 20. 查看自己的IP地址 240 命令:ifconfig 241 格式:ifconfig -a 242 243 21. 查看路由表 244 命令:netstat 245 格式:netstat -rn 246 247 22. 远程登录 248 命令:telnet 249 格式:telnet hostname 250 251 23. 文件传输 252 命令:ftp (file transfer program) 253 格式:ftp hostname 254 功能:网络文件传输及远程操作。 255 选项:ftp命令: 256 cd [dirname] 进入远程机的目录 257 lcd [dirname] 设置本地机的目录 258 dir/ls 显示远程的目录文件 259 bin 以二进制方式进行传输 260 asc 以文本文件方式进行传输 261 get/mget 从远程机取一个或多个文件 262 put/mput 向远程机送一个或多个文件 263 prompt 打开或关闭多个文件传送时的交互提示 264 close 关闭与远程机的连接 265 quit 退出ftp 266 !/exit ftp登陆状态下,!表示暂时退出ftp状态回到本地目录,exit表示返回ftp状态 267 注释: 268 例如:% ftp hostname 269 270 24. 查看自己的电子邮件 271 命令:mailx 272 格式:mailx 273 选项: 274 delete 删除 275 next 下一个 276 quit 退出 277 reply 回复 278 279 25. 回忆命令 280 命令:history 281 格式:history 282 功能:帮助用户回忆执行过的命令。 283 选项: 284 注释: 285 例如:% history 286 287 26. 网上对话 288 命令:talk 289 格式:talk username 290 功能:在网上与另一用户进行对话。 291 选项: 292 注释:对话时系统把终端分为上下两部分,上半部显示自己键入信息,下半部 293 显示对方用户键入的信息。键入delete或Ctrl+C则结束对话。 294 例如:% talk username 295 296 27. 允许或拒绝接受信息 297 命令:mesg (message) 298 格式:mesg [n/y] 299 功能:允许或拒绝其它用户向自己所用的终端发送信息。 300 选项:n 拒绝其它用户向自己所用的终端写信息 301 y 允许其它用户向自己所用的终端写信息(缺省值) 302 注释: 303 例如:% mesg n 304 305 28. 给其他用户写信息 306 命令:write 307 格式:write username [ttyname] 308 功能:给其他用户的终端写信息。 309 选项: 310 注释:若对方没有拒绝,两用户可进行交谈,键入EOF或Ctrl+C则结束对话。 311 例如:write username 312 313 29. 创建、修改、删除用户和群组 314 a. 创建群组: 315 例如: groupadd oinstall 创建群组名为oinstall的组 316 groupadd -g 344 dba 317 创建组号是344的组,此时在/etc/passwd文件中产生一个组ID(GID)是344的项目。 318 b. 修改群组: 319 groupmod:该命令用于改变用户组帐号的属性 320 groupmod –g 新的GID 用户组帐号名 321 groupmod –n 新组名 原组名:此命令由于改变用户组的名称 322 323 c. 删除群组: 324 groupdel 组名:该命令用于删除指定的组帐号 325 326 d. 新建用户: 327 命令: useradd [-d home] [-s shell] [-c comment] [-m [-k template]] 328 [-f inactive] [-e expire ] [-p passwd] [-r] name 329 主要参数 330 -c:加上备注文字,备注文字保存在passwd的备注栏中。 331 -d:指定用户登入时的启始目录。 332 -D:变更预设值。 333 -e:指定账号的有效期限,缺省表示永久有效。 334 -f:指定在密码过期后多少天即关闭该账号。 335 -g:指定用户所属的群组。 336 -G:指定用户所属的附加群组。 337 -m:自动建立用户的登入目录。 338 -M:不要自动建立用户的登入目录。 339 -n:取消建立以用户名称为名的群组。 340 -r:建立系统账号。 341 -s:指定用户登入后所使用的shell。 342 -u:指定用户ID号。 343 344 举例: # useradd -g oinstall -G dba oracle 创建Oracle用户 345 346 e. 删除用户 347 命令: userdel 用户名 348 删除指定的用户帐号 349 userdel –r 用户名(userdel 用户名;rm 用户名):删除指定的用户帐号及宿主目录 350 例:#useradd -g root kkk //把kkk用户加入root组里 351 352 f. 修改用户 353 命令: usermod 354 修改已有用户的信息 355 usermod –l 旧用户名 新用户名: 修改用户名 356 usermod –L 用户名: 用于锁定指定用户账号,使其不能登陆系统 357 usermod –U 用户名: 对锁定的用户帐号进行解锁 358 passwd –d 用户名: 使帐号无口令,即用户不需要口令就能登录系统 359 例:#usermod -l user2 user1 //把用户user2改名为user1 360 361 30. 启动、关闭防火墙 362 永久打开或则关闭 363 chkconfig iptables on 364 chkconfig iptables off 365 即时生效:重启后还原 366 service iptables start 367 service iptables stop 368 或者: 369 /etc/init.d/iptables start 370 /etc/init.d/iptables stop 371 372 31. 启动VSFTP服务 373 即时启动: /etc/init.d/vsftpd start 374 即时停止: /etc/init.d/vsftpd stop 375 376 开机默认VSFTP服务自动启动: 377 方法一:(常用方便) 378 [root@localhost etc]# chkconfig --list|grep vsftpd ( 查看情况) 379 vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off 380 [root@localhost etc]# chkconfig vsftpd on (执行ON设置) 381 或者:方法二: 382 修改文件 /etc/rc.local , 把行/usr/local/sbin/vsftpd & 插入文件中,以实现开机自动启动。 383 384 32. vi技巧 385 a. 进入输入模式 386 新增 (append) 387 a :从光标所在位置後面开始新增资料,光标後的资料随新增资料向後移动。 388 A:从光标所在列最後面的地方开始新增资料。 389 390 插入 (insert) 391 i:从光标所在位置前面开始插入资料,光标後的资料随新增资料向後移动。 392 I :从光标所在列的第一个非空白字元前面开始插入资料。 393 394 开始 (open) 395 o :在光标所在列下新增一列并进入输入模式。 396 O: 在光标所在列上方新增一列并进入输入模式。 397 b. 退出vi 398 在指令模式下键入:q,:q!,:wq或:x(注意:号),就会退出vi。其中:wq和:x是存盘退出,而:q是直接退出,如果文件已有新的变化,vi会提示你保存文件而:q命令也会失效,这时你可以用:w命令保存文件后再用:q 退出,或用:wq或:x命令退出,如果你不想保存改变后的文件,你就需要用:q!命令,这个命令将不保存文件而直接退出vi。 399 400 c. 删除与修改文件的命令: 401 x:删除光标所在字符。 402 dd :删除光标所在的列。 403 r :修改光标所在字元,r 後接著要修正的字符。 404 R:进入取替换状态,新增文字会覆盖原先文字,直到按 [ESC] 回到指令模式下为止。 405 s:删除光标所在字元,并进入输入模式。 406 S:删除光标所在的列,并进入输入模式。 407 408 d. 屏幕翻滚类命令 409 Ctrl+u: 向文件首翻半屏 410 Ctrl+d: 向文件尾翻半屏 411 Ctrl+f: 向文件尾翻一屏 412 Ctrl+b: 向文件首翻一屏 413 nz: 将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。 414 415 e. 删除命令 416 ndw或ndW: 删除光标处开始及其后的n-1个字 417 do: 删至行首 418 d$: 删至行尾 419 ndd: 删除当前行及其后n-1行 420 x或X: 删除一个字符,x删除光标后的,而X删除光标前的 421 Ctrl+u: 删除输入方式下所输入的文本 422 423 f. 搜索及替换命令 424 /pattern: 从光标开始处向文件尾搜索pattern 425 ?pattern: 从光标开始处向文件首搜索pattern 426 n: 在同一方向重复上一次搜索命令 427 N: 在反方向上重复上一次搜索命令 428 :s/p1/p2/g: 将当前行中所有p1均用p2替代 429 :n1,n2s/p1/p2/g: 将第n1至n2行中所有p1均用p2替代 430 :g/p1/s//p2/g: 将文件中所有p1均用p2替换 431 432 g. 复制,黏贴 433 (1) 选定文本块,使用v进入可视模式;移动光标键选定内容 434 (2) 复制选定块到缓冲区,用y;复制整行,用yy 435 (3) 剪切选定块到缓冲区,用d;剪切整行用dd 436 (4) 粘贴缓冲区中的内容,用p 437 438 h. 其他 439 在同一编辑窗打开第二个文件,用:sp [filename] 440 在多个编辑文件之间切换,用Ctrl+w