Linux常用管理命令介绍

x33g5p2x  于2020-09-08 发布在 Linux  
字(3.9k)|赞(0)|评价(0)|浏览(881)

1、Linux简介

Linux内核最初只是由芬兰人李纳斯·托瓦兹(Linus Torvalds)在赫尔辛基大学上学时出于个人爱好而编写的。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。Linux能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

2、Linux发行版

Linux的发行版说简单点就是将Linux内核与应用软件做一个打包。目前市面上较知名的发行版有:Ubuntu、RedHat、CentOS、Debian、Fedora、SuSE、OpenSUSE、Arch Linux、SolusOS 等。

3、Linux系统目录结构

登录系统后,在当前命令窗口下输入命令:

#!/bin/bash
ls / 

以下是对这些目录的解释:

/bin:bin是Binary的缩写, 这个目录存放着最经常使用的命令。
/boot:这里存放的是启动Linux时使用的一些核心文件,包括一些连接文件以及镜像文件。
/dev:dev是Device(设备)的缩写, 该目录下存放的是Linux的外部设备,在Linux中访问设备的方式和访问文件的方式是相同的。
/etc:这个目录用来存放所有的系统管理所需要的配置文件和子目录。
/home:用户的主目录,在Linux中,每个用户都有一个自己的目录,一般该目录名是以用户的账号命名的。
/lib:这个目录里存放着系统最基本的动态连接共享库,其作用类似于Windows里的DLL文件。几乎所有的应用程序都需要用到这些共享库。
/lost+found:这个目录一般情况下是空的,当系统非法关机后,这里就存放了一些文件。
/mnt:系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在/mnt/上,然后进入该目录就可以查看光驱里的内容了。
/opt:这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。
/root:该目录为系统管理员,也称作超级权限者的用户主目录。
/usr:这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于windows下的program files目录。
/var:这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件

4、Linux文件基本属性

Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls –l命令来显示一个文件的属性以及文件所属的用户和组,如:

#!/bin/bash
[root@www /]# ls -l
total 64
dr-xr-xr-x   2 root root 4096 Dec 14  2012 bin
dr-xr-xr-x   4 root root 4096 Apr 19  2012 boot
……

实例中,bin文件的第一个属性用"d"表示。"d"在Linux中代表该文件是一个目录文件。在Linux中第一个
字符代表这个文件是目录、文件或链接文件等等。

  • 当为[ d ]则是目录
  • 当为[ - ]则是文件;
  • 若是[ l ]则表示为链接文档(link file);
  • 若是[ b ]则表示为装置文件里面的可供储存的接口设备(可随机存取装置);
  • 若是[ c ]则表示为装置文件里面的串行端口设备,例如键盘、鼠标(一次性读取装置)。

接下来的字符中,以三个为一组,且均为『rwx』 的三个参数的组合。其中,[ r ]代表可读(read)、
[ w ]代表可写(write)、[ x ]代表可执行(execute)。 要注意的是,这三个权限的位置不会改变,
如果没有权限,就会出现减号[ - ]而已。每个文件的属性由左边第一部分的10个字符来确定(如下图)。

从左至右用0-9这些数字来表示。
第0位确定文件类型,第1-3位确定属主(该文件的所有者)拥有该文件的权限。
第4-6位确定属组(所有者的同组用户)拥有该文件的权限,第7-9位确定其他用户拥有该文件的权限。其中,第1、4、7位表示读权限,如果用"r"字符表示,则有读权限,如果用"-"字符表示,则没有读权限;
第2、5、8位表示写权限,如果用"w"字符表示,则有写权限,如果用"-"字符表示没有写权限;第3、6、9位表示可执行权限,如果用"x"字符表示,则有执行权限,如果用"-"字符表示,则没有执行权限。

5、Linux常用命令

5.1、用户与用户组

#!/bin/bash
1) 查看有哪些分组
cat /etc/group

2) 添加用户组(其中:-g为用户组的gid)
groupadd -g 600 hadoop 

3) 删除用户组
groupdel hadoop

4) 添加用户(其中:-u 601为用户id,-g hadoop为用户添加到哪个组,更多参数用户使用man useradd)
useradd -u 601 -g hadoop liumm

5) 修改密码
passwd [-d|-l|-S|-u] 用户名称
其中:-d为清空密码,-l锁定用户,-S查看用户状态,-u解锁用户

6) 删除用户(其中:-r为删除用户时是否把宿主目录也删除)
userdel [-r] 用户名

5.2、文件与目录操作

#!/bin/bash
1) ls命令(查看目录下文件列表)
ls /etc/

2) 创建目录
mkdir hadoop

3) 切换目录
cd .. 切换上一级
cd /  切换到根目录
cd    切换到宿主目录

4) 拷贝命令(其中:-r拷贝子目录,-v显示拷贝过程)
cp [-r|-v] ../liumm.txt ../liumm_rename.txt

5) 文件分发
scp 原地址 目的地址,常用用法如下
scp ../liumm.txt root@192.168.1.1:~/opt  将文件liumm.txt拷贝到服务器192.168.1.1下的~/opt目录下
scp root@192.168.1.1:~/opt/liumm.txt ./  将服务器192.168.1.1下的~/opt/liumm.txt文件拷贝到当前目录
scp -R root@xxx:~/opt/ root@bbb:~/opt/   将xxx服务器中的/opt目录下的文件全部拷贝到bbb服务器/opt文件中

6) 删除命令(其中:-r为递归删除,-f为强制删除,-v显示删除过程)
rm [-r|f|v] 文件或者目录

7) 查看命令
cat liumm.txt
cat liumm.txt >> liumm_new.txt
cat liumm_1.txt liumm_2.txt >> liumm_new.txt

8) 移动命令
mv ../liumm ../liumm_new

9) 查看当前位置
pwd

10) 文件查找(find太慢了,可以使用这个)
updatedb 离线检索收集文件的信息
locate 文件目录名称

11) 文件搜索
grep [-c|i|h|n|s|v] 搜索内容 文件地址
其中:
-c 只输入匹配的行数
-i 不区分大小写
-h 查看多文件时,不显示文件名
-n 显示匹配的行号 
-s 不显示不存在或者匹配不存在的信息
-v 显示不包含匹配的行数

grep -c liumm ../liumm.txt

12) 文件重导
> 覆盖
>> 追加
ls -a >> liumm.txt  将ls -a 输出的信息接入到liumm.txt

13) 管道功能
| 将之前命令输出的信息给下一个命令进行使用
ls -a | grep liumm 将ls -a 输出的结果在进行过滤查询

5.3、vi文件编辑与操作

#!/bin/bash
1) 命令模式
光标移动
k      上
j      下
h      左
i      右
^      头
&      尾
[n]G   跳转到地几行

翻页
ctrl+f  前一页
ctrl+b  后一页
ctrl+u  向前翻半页
ctrl+d  向后翻半页

删除命令
x   删除当前光标一个字符
dd  删除当前光标一行

取消操作
u      取消最近一次操作
U      取消所有操作
Ctrl+R 恢复对u的操作

复制操作
[n] yy  复制第n行
y$      复制当前光标到尾部
y^      复制当前光标到首部

2) 输入模式
home        行首
end         行尾
page up     上一页
page down   后一页
delete      删除当前光标单词


3) 末行模式
保存与退出
:q! 强制退出
:w  保存
:w [另存为文件名]
:wq 保存退出
:wq!强制保存退出 

显示行号
set nu   显示行号
set nonu 取消行号

查找与替换
/[key]         查找
:s/old/new     替换首次出现old替换为new
:s/old/new/g   替换全部出现old替换为new
:[n,m] s/old/new/g   替换[n,m]行出现old替换为new
:s/old/new/c   交互替换(y替换,n不替换,a接下来所有替换,q退出,i替换并退出)

5.4、网络信息查看

#!/bin/bash
netstat -nlp| grep 8080

5.5、打包与压缩

#!/bin/bash
tar -czvf liumm.tar.gz liumm/
tar -xzvf liumm.tar.gz ../

5.6、在后台运行程序

#!/bin/bash
java -jar xxx.jar &
java -jar xxx.jar nohup

5.7、注销关闭重启

#!/bin/bash
logout 注销退出
rebbot 重启
shutdown now        立即关机
shutdown +5         过五分钟关机
shutdown 10:30      在十点半关机
shutdown -r now     立即关机并且重启
shutdown -r 10:33   在10:33重启

相关文章