title: “Linux常用命令” date: 2015-12-11 21:14:54 layout: post title: “Linux常用命令” date: 2015-12-11 22:14:54 categories: Linux tags: Linux命令 —
基本指令
pwd
: 查看当前的工作目录cd
: 目录跳转clear
: 清屏loout
: 登出(注销)shutdown -h
: halt,关机后面跟关机时间,单位为分钟shutdown -r
:reboot,重启后面跟重启时间,单位为分钟shutdown -k
:发出警告,并未执行任何操作,单位为分钟shutdown -c
:中止shutdown指令shutdown –h now
:立即关机
vi指令
打开文件 :
vi filename
:新建或打开文件,如果文件不存在则新建文件,反之则直接打开已存在文件vi + filename
:打开文档并放置光标于最后一行vi +n(行号) filename
:打开文档并放置光标与第n行vi +/string filename
:打开文档并搜索指定关键词string高亮显示vi filename filename
:同时编辑多个文件
命令模式:
^
:放置光标与行首- $ :放置光标与行尾
yy
:复制当前行p
:粘贴dd
:删除当前行u
:撤销上一步
末行模式:
:q
:(quit退出当前文档:w
:保存当前文档:wq
:保存并退出:q!
:强制退出:w!
:强制保存(编辑系统文件时,需要使用此命名):wq!
:强制保存与退出:set nu
:显示行号:set nonu
:取消行号/string
:搜索字符串string并高亮显示,匹配到后使用n
跳到下一个:noh
:取消高亮
软硬链接
ln [参数] <源文件或目录> <目标文件或目录> :创建软硬链接
-s :软链接文件
-d :硬链接文件
在创建时,必须使用绝对路径。软连接颜色为 浅蓝色,并显示的指向了源文件,而硬链接文件是没有变化的
USAGE
ln -s /root/test.txt /home/ruan.txt
ln -d /root/test.txt /home/ying.txt
//创建时:目标文件(ruan.txt ying.txt)是不存在的,是源文件test.txt创建连接时指定生成的。
此时:
- 这三个文件任何一个的内容修改都会影响到另外两个
- 软硬链接文件的删除只会影响自己,而不会影响到源文件和其他链接成员
- 源文件的删除只会影响到软链接文件,而不会影响硬链接文件
用户和组
/etc/group
: 用户组信息档案/etc/gshadow
: 用户组密码(新版不用了)档案/etc/passwd
: 用户信息档案/etc/shadow
: 用户密码信息档案
组相关shell指令:
groupadd 组名
-g
添加组是指定组id:groupadd -g 502 myy
groupmod 组名
- -n :修改组名称
- -g : 修改组id
groupmod -g 503 -n woniu zuji #把 zuji 组的名字修改成woniu 且组id修改为503
groupdel 组名
用户相关shell指令:
useradd 【选项】 用户名
-g group_name
: 添加用户时指定组名,若不指定,会生成和用户名一样的组信息-d home
:添加用户是指定用户的家
#新增一个zuji用户,且指定其家为/home/user ,分组名为guser
useradd -d /home/user -g guser zuji
usermod 【选项】 用户名
-c comment
: 修改用户的备注信息-l login_name
: 修改用户名称-d home_dir
: 修改用户的家-g group_name
: 修改用户的所属组信息
#修改用户 woniu 的备注信息为info,家为/home/test ,且重命名为zuji
usermod -c info -l zuji -d /home/test woniu
userdel 【选项】 用户名
-r
: 删除用户时,同时删除用户的家
userdel -r woniu
设置用户密码:
passwd 【选项】 用户名
-S
:查看用户状态(大写的Status)-l
:锁定帐号(lock)-u
:解锁帐号(unlock)-d
:删除密码(del)
# 给用户zuji设置密码
passwd zuji
禁止普通用户登录:
- 方式一:通过修改/etc/shadow,把在密码前面添加 !! 针对性的禁止
- 方式二:在/etc/下创建nologin文件,禁止所有普通用户登录
添加和删除组成员(附属组):
gpasswd 【选项】 组名
-a user_name
: 添加用户到附属组中-d user_name
: 从附属组中移除用户
#指定woniu组为用户zuji的附属组
gpasswd -d zuji woniu
赋予普通用户特殊权限:
vi /etc/sudoers
#给用户指定可以使用的特殊权限。命名所在目录必须是绝对地址,可以使用whereis进行查看
myy localhost=/sbin/shutdown
myy localhost=/usr/sbin/useradd
#由于该文件是只读文件,保存是需要加感叹号
其他:
su
:切换用户 (root切换普通用户直接切换,普通切root需要密码)newgrp
: 切换所属组whoami
: 查看当前用户(基本没用了)chfn
用户名称 :设置用户资料finger
用户名称 :查看用户资料
文件管理
创建目录:
mkdir 选项 目录名称
-p
:递归创建(比如创建多层目录,不加的话不能创建多层)-m
:创建时指定目录权限(比如:644、755)
mkdir -m 777 -p ThinkPHP/Home
删除目录:
rmdir 选项 目录名
-p
:递归删除
rmdir -p ThinkPHP/Home
创建文件:
vi 文件名
:创建文件并通过vi编辑器打开
touch文件名
: 创建文件但不打开
删除文件 :
rm 文件名
-r
: 递归操作-f
:删除时是否确认(添加此参数则不询问)
rm -rf text.txt
文件和文件夹的复制:
cp 【参数】 源文件路径 目标文件路径
-R
:递归复制-p
: 复制是保持文件的原有属性-v
: 复制时显示复制进度
cp -Rpv test /home/test
文件和文件夹的移动和重命名:
mv 【参数】 源文件或目录 目标文件或目录
//把root下面的test目录移动到home目录下(剪切)
mv /root/test /home/
//把当前目录下的goods.php重命名为test.php(目录也是一样的)
mv goods.php test.php
搜索匹配行:
grep 【参数】 字符串 源文件
-n
:显示行号 (匹配的结果前会显示所在行号)-c
:统计所有匹配行 (只会显示一个匹配到的数量)-i
:忽略大小写
grep -n -i index /usr/local/apache/conf/httpd.conf
显示文件内容:
cat <filename>
: 正序输出文件内容
tac <filename>
:倒序输出文件内容
查看文件权限:
ls
:查看档案信息
-l
: 以列表形式查看文件信息 等同于ll
指令-a
: 显示所有文件信息,包裹隐藏文件
更改文件权限:
chmod
:更改文件权限(拥者权限 所属组权限 组外用户权限)
-R
:递归修改
//把test.txt档案的文件权限修改为755
chmod -R 755 test.txt
chown
:更改文件拥者
-R
:递归修改
//把test.txt档案的拥有者修改为myy
chown -R myy test.txt
chgrp
:更改文件所属组
-R
:递归修改
//把test.txt档案的组修改为root组
chgrp -R myy test.txt
文件搜索:
find 目录列表 匹配参数 匹配标准
-name
: 搜索指定名称的文件-group
: 搜索指定组文件-user
: 搜索指定用户文件
//在/root下查询名字包含keyword的文件--模糊查询
find /root -name '*keyword*'
//搜索/root目录下属于zuji组的文件
find /root -group zuji
//搜索/root下拥有者为root的文件
find /root -user root
查看磁盘信息
df
-l
: 显示磁盘信息-h
: 以1024进制显示-H
: 以1000进制显示-T
: 显示分区类型-t
: 显示指定分区类型-x
: 显示除指定分区类型以外的磁盘类型
df -lh -t ext3
文件统计
du 文件(夹)
-b
: 以字节形式显示-k
:以千字节形式显示--m
: 以兆形式显示-h
: 以1024进制显示-H
: 以1000进制显示(新版用 –si进行代替)-s
: 统计文件(夹)大小
du -k install.log
Linux软件
分类:
- .rpm :二进制软件包,编译后的软件
- .tar.gz :未编译软件包,必须通过GCC编译安装
rpm软件的管理
查看已安装:
rpm指令 -qa | grep 筛条件软件名称
rpm –qa | grep vim 在所有安装了的软件当中查找vim
卸载已安装:
rpm指令 –e 卸载软件名称
//必须手工输入名称,可以省略后面的版本号
rpm -e vim-enhanced
安装软件:
rpm指令 -ivh 软件名称
-i
:安装软件-vh
:显示详细安装进度