文件和目录操作的基本命令: cat、clear、cmp、cut、diff、du、emacs、fgrep、file、grep、head、ln、less、more、pico、pwd、sort、stat、strings、tail、touch、umask、uniq、vi、wc、whatis
为前进等地区用户提供了全套网页设计制作服务,及前进网站建设行业解决方案。主营业务为成都网站建设、网站建设、前进网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!
ls:ls [选项|参数] 目录名 eg:#ls -R /etc/httpd/conf/ 显示/etc/httpd/conf/目录及子目录内容
chmod:chmod [选项] mode 文件名或目录 eg:#chmod ugo+r test.log 将文件/root/test.log设为所有人皆可读取
chown:chown [选项] 用户名或组名 eg:[root@Linux test]#chown -R jake:gdlc * 将/test目录下的所有文件与子目录的拥有者都设为jake,所属组设为gdlc
chgrp:chgrp [选项] Group {文件...|目录}
eg:[root @Linux root]#chgrp -R test * 更改/root目录下的所有文件和目录的所属组为test
chattr:chattr [选项] [mode] 文件名 eg:#chattr +i /test/a.txt 设置/test/a.txt文件不可修改
lsattr:lsattr [选项] [文件名](注:用于显示文件或目录的隐藏属性)
eg:#lsattr -a 显示root目录下所有文件的隐藏属性
mkdir:mkdir [选项|参数] 目录名 eg:#mkdir -p test/aa/ {bb,cc}
在工作目录下的test目录中,建立一个名为aa的子目录。并在aa子目录中创建bb和cc目录,若父目录不存在,则创建
rmdir:rmdir [选项|参数] 目录名(注:用于删除空的目录)
rm:rm [选项] [文件或目录...](注:删除文件或目录)
mv:mv [选项] [源文件或目录] [目标文件或目录](注:移动或更名现有的文件或目录)
cp:cp [选项] [源文件或目录] [目标文件或目录] [目的目录]
eg:[root@Linux root]#cp ks/bb * /home/jake 复制/root/ks/bb开头的所有文件到/home/jake目录下
find:find 起始目录 查找条件 操作(从指定的起始目录开始,递归地查找其各个目录,查找满足查找条件的文件并对之采取相关的操作) eg:[root@Linux root]#find . -empty 在/root/目录下,查找所有为空的文件或目录
whereis:whereis [选项] 查找的字符串 (查找指定文件的源、二进制和手册等) eg:#whereis passwd 查找passwd命令的所有信息
which:which [选项] 查询的字符串(用于查询命令或别名的位置) eg:#which ls 查找ls命令的位置
locate:locate [选项] 查找的字符串(快速查找系统指定数据库中指定的内容)
eg:#locate -u 创建locate数据库 #locate groupadd 在locate数据库中查找groupadd字符
l 文件压缩和有关文档归档的命令:
compress、uncompress:用于压缩或解压缩数据
gzip、gunzip:用于压缩或解压缩文件,其中gzip是在Linux系统中经常使用的压缩和解压缩命令
rpm:用于启动RPM软件包管理操作
tar:用于启动文件打包程序
unzip/zip:用于解压缩扩展名为.zip的文件,即可以在Linux下解压Windows中用Winzip压缩的文件 / 用于打包和压缩文件
uuencode/uudecode:用于对一个二进制文件进行编码 / 用于对一个已编码的文件进行解码
l 针对文件系统的命令:
dd、df、edquota、fdformat、fdisk、mkfs、mkswap、mount、quota、quotaon、swapoff、swapon、umount
l 与DOS兼容的命令:
mcopy、mdel、mdir、mformat、mlabel、mtools
l 与系统管理相关的命令:
dmesg:用于显示或控制kernel缓冲区
mesg:用于设置是否允许其他用户用write命令发送信息(允许:#mesg y 不允许:#mesg n)
free:查看当前系统内存的使用情况
shutdown:关机或进入单人维护模式
uname:显示系统信息
sync:用于关闭Linux系统时,强制把内存中的数据写回硬盘,以免数据丢失
uptime:显示系统运行多长时间
date:显示当前系统的日期和时间
bc:设置计算机的语言类型
cal:显示计算机中的月历或年历
write:用来向系统中的某一个用户发送消息。用户如果想退出信息发送状态,按组合键Ctrl+C即可。示例:
#write root
发送内容
EOF
l 用户管理命令:
chfn、chsh、groupadd、groupmod、groups、passwd、usermod、whoami
useradd:创建新的用户帐户。
示例:#useradd –u 550 –g 100 –d /home/hong –s /bin/bash –e 08/01/03 –p yokotit hong
参数意义:
-u:设置用户标示符 -g:指定用户所属的用户组
-d:建立用户目录 -s:指定用户环境
-e:设置帐户的期限 -p:设置用户密码
(注意:当使用useradd来创建新的用户帐号时,管理员必须替用户设置密码)
userdel:删除帐号。示例:userdel –r hong (-r表示在删除帐户时,同时将该帐号的用户目录及邮件目录都删除)
(停用帐号:修改/etc/passwd文件,把相应行注释掉即可)
w:查看用户的行为。示例:
1.#w
2.#w root (查看root帐户的行为)
who:查看系统当前的在线用户。示例:
who [-u] (-u:列出详细信息)
last:查看最近有哪些用户曾经登陆过系统。(当执行命令时,将读取目录/var/log下的
wtmp文件)示例:
1.#last
2.#last hong (查看hong的登陆信息)
su:切换用户身份 su [-p] [-c command] [-s shell] [-] [USER [ARG]]
示例:[root@Linux test]#su -c "cp -r /root/*.*/tmp" root 切换到root用户环境,并执行复制命令返回
sudo:以系统管理者的身份执行指令 sudo [选项|参数] 命令
示例:切换身份,使系统10min后关机
[test@linux test]$ shutdown -h +10
-bash:shutdown:command not found
[test@linux test]$ sudo /sbin/shutdown -h +10
l 网络管理命令:
finger、ftp、host、hostname、
ifconfig:可查看网卡状态,修改一些网络配置。示例:
#ifconfig 查看网卡状态
#ifconfig eth0 netmask 255.255.0.0 修改子网掩码
#ifconfig eth0 down 关闭网卡
#ifconfig eth0 up 打开网卡
route:查看和配置路由信息
lynx、mail、netstat、nslookup、ping、pine、rlogin、rcp、rch、rsh、tcpdump、talk、telnet、wall、wget
l 进程管理命令:
(关于进程的优先级:优先级的范围为-20到19,其中-20优先级最高,默认优先级为0,加上nice之后,优先级变成10。-1到-20的优先级只有管理员才能设置。修改优先级可以使用renice命令。示例:#renice -5 2871 将优先级为2871的进程优先级改为-5)
、bg、fg、jobs、at、atq、atrm、crontab
kill:删除进程的命令。示例:
#kill -15 2682
#kill -9 2682
ps:查看系统中执行的进程,查看详细信息(ps –u 或ps -l)。示例:
1.#ps –l
2.查看系统每位用户的全部进程
#ps -aux
3.使用sort排序
#ps –aux –sort user
4.查询包含字符串hong的进程
#ps –aux | grep “hong”
top:用于监控系统的资源,包括内存、交换分区、CUP的使用率等
(注意:执行top命令时,将监视系统中全部用户的进程,如果只想监控某位特定的用户,只需按下U键,然后指定用户帐号名即可;终止执行中的程序:K)
l Shell命令(请记住:shell命令都属于bash命令):
SHELL:查看系统环境变量SHELL,示例:#echo $SHELL
alias:设置bash别名
unalias:用于删除已经设定的别名
history:在BASH shell里,history命令保留了用户最近执行的命令。示例:#history
set:在bash下,可用set命令查看环境变量。示例:#set
l 与打印有关的命令
lpq:用于为打印作业列出打印队列
lpr:用于将一个文件发送到网络打印机,并把文件列表作为命令参数。
示例:#lpr mydata1
lprm:用于从打印输出序列中删除打印作业
linux基本命令:(其他的太多了,自己去百度吧)
ls:
-l:显示详细信息
-a:显示隐藏文件和其他所有文件(以.开头的为隐藏文件)
-t:安时间排序
-h:以KB MB 等单位显示
-d:只列出目录名,不列出其他内容
-R:递归显示所有目录及子目录
-lath:选项可以合并
pwd:显示当前所在位置
cd:转换目录
cd ..:返回上一级目录
cd -:回到上一次操作的目录
mkdir: 建目录
-v:显示所建目录,相同可用{}:mkdir -v dir{1,2,3}
-p:创建多级目录
rmdir:删除空目录
rm:删除
-f:强制删除无提示
-r:可删除目录
mv:移动 重命名
touch:建立空文件
file:验证文件或目录的类型
cp:复制,粘贴 (copy)改名
cp 原文件 目标文件
-r:可复制目录
ssh 192.168.1.33 远程登录
跨机拷贝:scp -r /root/Server/ 192.168.1.253:/dcw
man 命令:帮助
alias:查看是否有别名
去掉别名用完整路径
eg:
#which cp
#/bin/cp a.text b.text 或 \cp a.text b.text
或 在 /root/.bashrc 中去掉#alias cp='cp -i',后#unalias cp
查看某文件前4行内容并显示文件路径和文件名
[/usr/local/nagios]#ls /etc/vsftpd/vsftpd.conf head -n 4 /etc/vsftpd/vsftpd.conf
/etc/vsftpd/vsftpd.conf
# Example config file /etc/vsftpd/vsftpd.conf
#
# The default compiled in settings are fairly paranoid. This sample file
# loosens things up a bit, to make the ftp daemon more usable.
linux tee 命令详解
功能说明:读取标准输入的数据,并将其内容输出成文件。
语法:tee [-ai][--help][--version][文件...]
补充说明:tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。
参数:
-a或--append 附加到既有文件的后面,而非覆盖它.
-i-i或--ignore-interrupts 忽略中断信号。
--help 在线帮助。
--version 显示版本信息。
cat /etc/sysconfig/network
-n:查看行号信息
more:空格翻页 回车换行
less:上下键翻页 可以反复看(可以回翻页)
head:显示前几行
head -5 install.log 显示前5行
tail:显示后几行
tail -f 动态更新
grep:查看文件中包含关键字的一行
#grep --color=tty dump intstall.log 彩色显示
正则表达式:^root 以root为开头(^)
root$,以root结尾($)
-v:不包括的几行(取反)
grep -n -v ^# /etc/vsftpd/vsftpd.conf
:r /root/install.log 追加读入一个文件
:e 读入文件
:e! 重新读入
:q 不保存 :q!强制退出
:w 保存 :qw保存退出 :wq! 强制保存退出
在未写入状态时:
h 左 k 上 j下 l 右
shift+4($) 光标移到行尾 shift+6(^) 光标移到行头
:50 来到50行
#vim /root/install.log +50(n)来到50行
:set nu 显示行号
:set nonu 取消行号
shift+g 来到行尾
n(无显示)+G:直接来到n行
shift+a:自动来到行尾输入
:50,100 w bb.txt 保存50到100行的内容到bb.txt中
r :替换单个字符 R:替换全行
shift+o:向上插入 o:向下插入
yy 复制 p 粘贴
(n)2yy 复制前两行
y^:复制从光标位置到开头 y$:复制从光标位置到结尾
d:剪贴一行
dd:剪贴两行
ndd:多行
d^:剪贴到开头 d$:剪贴到结尾
:g/^$/d 去掉空行
:g/^\s*$/d 去空格
向左移动25个字符:25+l
:/ 查找 自上而下
:? 查找自下而上
n 下一个
替换:
:s/old/new 把旧的换为新的 单个
:s/old/new/g 整行替换
:%s/old/new/g 整个文件替换
:%s/old/new/gc 整个文件替换并询问
u:替换上次命令
ctrl+r 重做
ctrl+^ 两个切换
打开多个文件
vim a.txt b.txt c.txt
:args 可选
:next
:prev
:last
vim diff a.txt b.txt
ctrl+w+w 跳到第二个文件
:wqa
使用vimtutor工具联系vim使用。
vimtutor工具使用方法:
vimtutor zh
如果出现乱马,使用下面命令解决(只能执行一次)
cd /usr/share/vim/vim70/tutor
mv tutor.zh.euc tutor.zh.euc.bak
iconv -f gb2312 -t utf-8 tutor.zh.euc.bak tutor.zh.euc
vimtutor zh
locate :空间换时间
updatedb
locate passwd
find [路径] [参数] [表达式]
find /usr/share/doc -name filename
-user:根据文件拥有者寻找文件
-group:根据文件所属组寻找文件
-name:根据文件名寻找文件
-perm:根据文件权限寻找
-size:根据文件大小寻找
-type:根据文件类型寻找文件,参数对应c b l f d
find 的表达式使用通配符时需要使用“”圈界
find 目录 条件 条件
[root@localhost ~]# find / -name "pass*"
当前目录:.
find . -name "*ss*"
find . -type f(文件)
find . -type d(目录)
[root@localhost ~]# find . -nouser(文件无属主)
[root@localhost ~]# find . -nogroup(文件无属组)
[root@localhost ~]# find /home/ -user/group user1
-exec
[root@localhost ~]# find . -nouser -exec rm {} \;
{}代表文件和目录
\转义字符
-ok
find . -nogroup -ok rm -rf {} \;有提示删除
[root@localhost ~]# stat a
File: “a”
Size: 0 Blocks: 0 IO Block: 4096 一般空文件
Device: 803h/2051d Inode: 261796 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2011-04-02 14:23:25.000000000 +0800(创建时间:-atime)
Modify: 2011-04-02 14:23:25.000000000 +0800(修改时间:-mtime)
Change: 2011-04-02 14:23:25.000000000 +0800(改变属组属主会变:-ctime)
find /root -mtime -5(5天以内) 5(5天时) +5(5天前)
find . -perm 400:要求权限全部匹配,精确匹配
find . -perm +600(wr):有w,r中任意权限的都会列出,即会列出200 400 600 的权限
find . -perm -600 :要求权限完全满足 权限大于等于600
-name -type
-name -user
-perm -type
-nouser
-nogroup
-mtime
-exec
-ok
-rgex(正则表达式)
Linux系统中的命令实在是太多了,简单包括两类命令,一类是内部命令,指的是Shell自身提供的功能,一类是外部命令,指的是第三方的控制台应用程序。
一般来说,没必要完全学习所有的命令,大体上有个印象,用到的时候去查一下帮助文档,久而久之,自然熟练。
下面是网友整理的20个最常用的Linux命令:
1. ls命令
ls命令是列出目录内容(List Directory Contents)的意思。运行它就是列出文件夹里的内容,可能是文件也可能是文件夹。
2. lsblk命令
"lsblk"就是列出块设备。除了RAM外,以标准的树状输出格式,整齐地显示块设备。
3. md5sum命令
“md5sum”就是计算和检验MD5信息签名。md5 checksum(通常叫做哈希)使用匹配或者验证文件的文件的完整性,因为文件可能因为传输错误,磁盘错误或者无恶意的干扰等原因而发生改变。
4. dd命令
“dd”命令代表了转换和复制文件。可以用来转换和复制文件,大多数时间是用来复制iso文件(或任何其它文件)到一个usb设备(或任何其它地方)中去,所以可以用来制作USB启动器。
6. history命令
“history”命令就是历史记录。它显示了在终端中所执行过的所有命令的历史。
7. sudo命令
“sudo”(super user do)命令允许授权用户执行超级用户或者其它用户的命令。通过在sudoers列表的安全策略来指定。
8. mkdir命令
“mkdir”(Make directory)命令在命名路径下创建新的目录。然而如果目录已经存在了,那么它就会返回一个错误信息"不能创建文件夹,文件夹已经存在了"("cannot create folder, folder already exists")
9. touch 命令
“touch”命令代表了将文件的访问和修改时间更新为当前时间。touch命令只会在文件不存在的时候才会创建它。如果文件已经存在了,它会更新时间戳,但是并不会改变文件的内容。
10. chmod 命令
“chmod”命令就是改变文件的模式位。chmod会根据要求的模式来改变每个所给的文件,文件夹,脚本等等的文件模式(权限)。
11. chown命令
“chown”命令就是改变文件拥有者和所在用户组。每个文件都属于一个用户组和一个用户。在你的目录下,使用"ls -l",你就会看到像这样的东西。
12. apt命令
Debian系列以“apt”命令为基础,“apt”代表了Advanced Package Tool。APT是一个为Debian系列系统(Ubuntu,Kubuntu等等)开发的高级包管理器,在Gnu/Linux系统上,它会为包自动地,智能地搜索,安装,升级以及解决依赖。
13. tar命令
“tar”命令是磁带归档(Tape Archive),对创建一些文件的的归档和它们的解压很有用。
14. cal 命令
“cal”(Calender),它用来显示当前月份或者未来或者过去任何年份中的月份。
16. cat命令
“cat”代表了连结(Concatenation),连接两个或者更多文本文件或者以标准输出形式打印文件的内容。
17. cp 命令
“copy”就是复制。它会从一个地方复制一个文件到另外一个地方。
18. mv 命令
“mv”命令将一个地方的文件移动到另外一个地方去。
19. pwd 命令
“pwd”(print working directory),在终端中显示当前工作目录的全路径。
20. cd 命令
最后,经常使用的“cd”命令代表了改变目录。它在终端中改变工作目录来执行,复制,移动,读,写等等操作。