现在的位置: 首页 > 综合 > 正文

linux常用基本命令

2013年01月02日 ⁄ 综合 ⁄ 共 16319字 ⁄ 字号 评论关闭

1.修改root用户密码命令:sudo passwd root
such as:
zyx@zyx-desktop:/$ sudo passwd root 
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully
zyx@zyx-desktop:/$ 
 
〔汇总〕Linux所有命令大全
Linux, 大全, 命令, 汇总
查看内核
uname -a
查看Ubuntu版本
cat /etc/issue 或 lsb_release -a
查看内核加载的模块
lsmod
查看PCI设备
lspci
查看USB设备
lsusb -v
查看网卡状态
sudo ethtool eth0
查看CPU信息
cat /proc/cpuinfo
显示当前硬件信息
sudo lshw
显示系统运行时间
uptime
查看硬盘的分区
sudo fdisk -l
硬盘分区
sudo fdisk /dev/sda
硬盘格式化
sudo mkfs.ext3 /dev/sda1
硬盘检查(请不要检查已经挂载的分区,否则容易损坏数据)
sudo fsck /dev/sda1
分区挂载
sudo mount -t 文件系统类型 (-o nls=utf8 或 -o iocharset=utf8) 设备路经 访问路经
分区卸载
sudo umount 目录名或设备名
查看IDE硬盘信息
sudo hdparm -i /dev/hda
查看STAT硬盘信息
sudo hdparm -I /dev/sda 或 sudo blktool /dev/sda id
查看硬盘剩馀空间
df
查看目录占用空间
du -hs 目录名
优盘没法卸载
sync;fuser -km /media/usbdisk
查看硬盘当前读写情况
sudo iostat -x 2
查看当前的内存使用情况
free
动态显示进程执行情况
top
查看当前有哪些进程
ps -A
查看当前进程树
pstree
中止一个进程
kill 进程号 或 killall 进程名
强制中止一个进程
kill -9 进程号 或 killall -9 进程名
图形方式中止一个程序
xkill 出现骷髅标志的鼠标,点击需要中止的程序即可
查看进程打开的文件
lsof -p
显示开启文件abc.txt的进程
lsof abc.txt
显示22端口现在运行什么程序
lsof -i :22
显示nsd进程现在打开的文件
lsof -c nsd
在后台运行程序,退出登录后,并不结束程序
nohup 程序 &
详细显示程序的运行信息
strace -f -F -o outfile <cmd>
增加系统最大打开文件个数
ulimit -n 4096 或 echo 4096 > /proc/sys/fs/file-max
配置 ADSL
sudo pppoeconf
ADSL手工拨号
sudo pon dsl-provider
激活 ADSL
sudo /etc/ppp/pppoe_on_boot
断开 ADSL
sudo poff
查看拨号日志
sudo plog
如何设置动态域名
w3m -no-cookie -dump 'http://usere:pass@members.3322.org/dyndns/update?system=dyndns&hostname=yourdns.3322.org'
根据IP查网卡地址
arping IP地址
根据IP查电脑名
nmblookup -A IP地址
查看当前IP地址
ifconfig eth0 |awk '/inet/ {split($2,x,\":\");print x[2]}'
查看当前外网的IP地址
w3m -no-cookie -dump www.123cha.com|grep -o '[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}\\.[0-9]\\{1,3\\}'
查看当前监听80端口的程序
lsof -i :80
查看当前网卡的物理地址
arp -a | awk '{print $4}'
同一个网卡增加第二个IP地址
sudo ifconfig eth0:0 1.2.3.4 netmask 255.255.255.0
立即让网络支持nat
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward; sudo iptables -t nat -I POSTROUTING -j MASQUERADE
查看路由信息
netstat -rn 或 sudo route -n
手工增加一条路由
sudo route add -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1
手工删除一条路由
sudo route del -net 192.168.0.0 netmask 255.255.255.0 gw 172.16.0.1
修改网卡MAC地址的方法
sudo ifconfig eth0 hw ether 00:AA:BB:CCD:EE
统计当前IP连接的个数
netstat -na|grep ESTABLISHED|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n
屏蔽IPV6
echo 'blacklist ipv6' | sudo tee /etc/modprobe.d/blacklist-ipv6
察看当前网络连接状况以及程序
sudo netstat -atnp
查看ADSL的当前流量
sudo ethstatus -i ppp0
查看域名的注册备案情况
whois baidu.cn
查看到某一个域名的路由情况
tracepath baidu.cn
重新从服务器获得IP地址
sudo dhclient
下载网站文档
wget -r -p -np -k http://www.xxx.com
如何5个线程下载
axel -n 5 http://www.xxx.com/downloadfile.zip
添加一个服务
sudo update-rc.d 服务名 defaults 99
删除一个服务
sudo update-rc.d 服务名 remove
临时重启一个服务
/etc/init.d/服务名 restart
临时关闭一个服务
/etc/init.d/服务名 stop
临时启动一个服务
/etc/init.d/服务名 start
增加用户
sudo adduser 用户名
删除用户
sudo deluser 用户名
修改当前用户的密码
passwd
修改用户密码
sudo passwd 用户名
修改用户资料
sudo chfn userid
如何禁用某个帐户
sudo usermod -L 用户名 或 sudo passwd -l 用户名
如何启用某个帐户
sudo usermod -U 用户名 或 sudo passwd -u 用户名
增加用户到admin组
sudo usermod -G admin -a 用户名
配置默认Java使用哪个
sudo update-alternatives --config java
终端设置代理
export http_proxy=http://xx.xx.xx.xx:xxx
修改系统登录信息
sudo vim /etc/motd
使用sun的java编译器
sudo update-java-alternatives -s java-6-sun
切换输入法引擎
im-switch -c
转换文件名由GBK为UTF8
convmv -r -f cp936 -t utf8 --notest --nosmart *
转换文件内容由GBK到UTF8
iconv -f gbk -t utf8 $i > newfile
转换 mp3 标签编码
sudo apt-get install python-mutagen;find . -iname '*.mp3' -execdir mid3iconv -e GBK {} \\;
控制台下显示中文
sudo apt-get install zhcon;zhcon --utf8 --drv=vga
lftp 登录远程Windows中文FTP 
lftp :~>set ftp:charset GBK
PDF 文件乱码
sudo apt-get install xpdf-chinese-simplified xpdf-chinese-traditional poppler-data
一屏查看文件内容
cat 文件名
分页查看文件内容
more 文件名
可控分页查看文件内容
less 文件名
根据字符串匹配来查看文件部分内容
grep 字符串 文件名
显示包含字符串的文件名
grep -l -r 字符串 路径
显示不包含字符串的文件名
grep -L -r 字符串 路径
快速查找某个文件
find 目录 -name 文件名
创建两个空文件
touch file1 file2
递归式创建一些嵌套目录
mkdir –p /tmp/xxs/dsd/efd
递归式删除嵌套目录
rm –fr /tmp/xxs
回当前用户的宿主目录
cd ~
查看当前所在目录的绝对路经
pwd
列出当前目录下的所有文件
ls -a
移动路径下的文件并改名
mv 路径/文件  /新路径/新文件名
复制文件或者目录
cp -av 原文件或原目录 新文件或新目录
查看文件类型
file filename
对比两个文件之间的差异
diff file1 file2
显示xxx文件倒数6行的内容
tail -n 6 xxx
不停地显示最新的内容
tail -n 10 -f /var/log/apache2/access.log
查看文件第五行到第10行的内容
sed -n '5,10p' /var/log/apache2/access.log
查找关于xxx的命令
apropos xxx 或 man -k xxx
通过ssh传输文件
scp -rp /path/filename username@remoteIP:/path
把所有文件的后辍由rm改为rmvb
rename 's/.rm$/.rmvb/' *
把所有文件名中的大写改为小写
rename 'tr/A-Z/a-z/' *
删除特殊文件名 --help.txt 的文件
rm -- --help.txt 或 rm ./--help.txt
查看当前目录的子目录
ls -d */. 或 echo */.
将最近30天访问过的文件移动到上级back目录
find . -type f -atime -30 -exec mv {} ../back \\;
显示一小时以内的包含 xxxx 的文件
find . -type f -mmin -60|xargs -i  grep -l xxxx '{}'
显示最近2小时到8小时之内的文件
find . -mmin +120 -mmin -480 -exec more {} \\;
删除修改时间在30天之前的文件
find . -type f -mtime +30 -mtime -3600 -exec rm {} \\;
删除创建时间在30天之前的文件
find . -type f -ctime +30 -ctime -3600 -exec rm {} \\;
删除掉guest的以avi或rm结尾的文件
find . -name '*.avi' -o -name '*.rm' -user 'guest' -exec rm {} \\;
删除掉不以java和xml结尾7天没有使用的文件
find . ! -name *.java ! -name '*.xml' -atime +7 -exec rm {} \\;
删除所有的 .svn 目录
find . -name .svn -type d -exec rm -fr {} \\;
删除所有以“~”结尾的临时文件
find . -name '*~' -exec rm {} \\;
统计当前文件个数
ls .|wc -w
统计当前目录个数
ls -l |grep ^d|wc -l
显示当前目录下2006-01-01的文件名
ls -l |grep 2006-01-01 |awk '{print $8}'
使用ssh方式同步远程数据到本地目录
rsync -Pa -I --size-only --delete --timeout=300 Remote_IP:/home/ubuntu /backup
增加 7Z 压缩软件
sudo apt-get install p7zip p7zip-full p7zip-rar
增加 rar 软件压缩和解压缩支持
sudo apt-get install rar unrar
解压缩 xxx.tar.gz
tar -zxvf xxx.tar.gz
解压缩 xxx.tar.bz2
tar -jxvf xxx.tar.bz2
压缩aaa bbb目录为xxx.tar.gz
tar -zcvf xxx.tar.gz aaa bbb
压缩aaa bbb目录为xxx.tar.bz2
tar -jcvf xxx.tar.bz2 aaa bbb
增加 lha 支持
sudo apt-get install lha
增加解 cab 文件支持
sudo apt-get install cabextract
显示日历
cal
设置日期
date -s mm/dd/yy
设置时间
date -s HH:MM
将时间写入CMOS
hwclock --systohc
查看CMOS时间
hwclock --show
读取CMOS时间
hwclock --hctosys
从服务器上同步时间
sudo ntpdate ntp.ubuntu.com
设置电脑的时区为上海
sudo cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
关闭UTC,将当前时间写入CMOS。
sudo sed -ie 's/UTC=yes/UTC=no/g' /etc/default/rcS;sudo hwclock --systohc
修改mysql的root口令
sudo mysqladmin -u root -p password '你的新密码'
如何使用命令关闭显示器
xset dpms force off
设置CPU的频率
sudo apt-get install cpufrequtils;sudo cpufreq-info
命令关机
sudo halt
现在关机
sudo shutdown -h now
晚上11点自动关机
sudo shutdown -h 23:00
60分钟后关机
sudo shutdown -h +60
命令重启电脑
sudo reboot
现在重启电脑
sudo shutdown -r now
关闭笔记本的触摸板
synclient touchpadoff=1
开启笔记本的触摸板
synclient touchpadoff=0
统计每个单词的出现频率并排序
awk '{arr[$1]+=1 }END{for(i in arr){print arr\"\\t\"i}}' FILE_NAME | sort -rn
统计80端口的连接并排序
netstat -na|grep :80|awk '{print $5}'|awk -F: '{print $1}'|sort|uniq -c|sort -r -n
把终端加到右键菜单
sudo apt-get install nautilus-open-terminal
如何删除Totem电影播放机的播放历史记录
rm ~/.recently-used
vim 如何显示彩色字符
sudo cp /usr/share/vim/vimcurrent/vimrc_example.vim /usr/share/vim/vimrc
让 vim 直接支持编辑 .gz 文件
sudo apt-get install vim-full
vim 如何显示行号
:set number
查看在会话设置的启动程序
ls ~/.config/autostart
提高wine的反应速度
sudo sed -ie '/GBK/,/^}/d' /usr/share/X11/locale/zh_CN.UTF-8/XLC_LOCALE
制作ISO文件
mkisofs -o test.iso -Jrv -V test_disk /home/carla/
延迟10秒抓图
gnome-screenshot -d 10
延迟5秒抓当前激活窗口
gnome-screenshot -w -d 5
如何命令行刻录
cdrecord -scanbus;cdrecord -v -eject speed=8 dev=1,1,0 test.iso
回收站在哪里
~/.local/share/Trash/
默认打开方式的配置文件在哪里
~/.local/share/applications/mimeapps.list
如何查看HTTP头
w3m -dump_head http://www.xxx.com
连续监视内存使用情况
watch  -d free
如何切换到root帐号
sudo -Hs
只读挂载ntfs分区
sudo mount -t ntfs -o nls=utf8,umask=0 /dev/sdb1 /mnt/c
可写挂载ntfs分区
sudo mount -t ntfs-3g -o locale=zh_CN.utf8,umask=0 /dev/sdb1 /mnt/c
挂载fat32分区
sudo mount -t vfat -o iocharset=utf8,umask=0 /dev/sda1 /mnt/c
挂载共享文件
sudo mount -t smbfs -o  username=xxx,password=xxx,iocharset=utf8 //192.168.1.1/share /mnt/share
挂载ISO文件
sudo mount -t iso9660 -o loop,utf8 xxx.iso /mnt/iso

1 文件管理 # ls ls -a 列出当前目录下的所有文件,包括以.头的隐含文件

文件管理 # ls ls -l或ll 列出当前目录下文件的详细信息

文件管理 # pwd pwd 查看当前所在目录的绝对路经

文件管理 # cd cd .. 回当前目录的上一级目录

文件管理 # cd cd - 回上一次所在的目录

文件管理 # cd cd ~ 或 cd 回当前用户的宿主目录

文件管理 # cd cd ~用户名 回指定用户的宿主目录

2 文件管理 # mkdir mkdir 目录名 创建一个目录

文件管理 # mkdir mkdir –p 递归式去创建一些嵌套目录

文件管理 # rmdir Rmdir 空目录名 删除一个空目录

3 文件管理 # rm rm 文件名 文件名 删除一个文件或多个文件

文件管理 # rm rm -rf 非空目录名 递归删除一个非空目录下的一切,不让提式-f

4 文件管理 # cat cat文件名 一屏查看文件内容

5 文件管理 # more more文件名 分页查看文件内容

6 文件管理 # less less 文件名 可控分页查看文件内容

7 文件管理 # grep grep字符 文件名 根据字符匹配来查看文件部分内容

8 文件管理 # mv mv 路经/文件 /经/文件 移动相对路经下的文件到绝对路经下

文件管理 # mv mv 文件名 新名称 在当前目录下改名

9 文件管理 # cp cp /路经/文件 ./ 移动绝对路经下的文件到当前目录下

10 文件管理 # find find 路经 -name “字符串” 查找路经所在范围内满足字符串匹配的文件和目录

11 文件管理 # ln ln 源文件 链接名 创建当前目录源文件的硬链接

ln /home/test /usr/test1 在/usr下建立/home/test的硬链接

12 文件管理 # ln Ln -s a b 创建当前目录下a的符号链接b

13 文件管理 # touch touch file1 file2 创建两个空文件

14 磁盘管理 # df df 用于报告文件系统的总容量,使用量,剩余容量。

15 磁盘管理 # du du -b /home 查看目前/HOME目录的容量(k)及子目录的容量(k)。

16 磁盘管理 # fdisk fdisk -l 查看系统分区信息

17 磁盘管理 # fdisk fdisk /dev/sdb 为一块新的SCSI硬盘进行分区

18 磁盘管理 # mkfs.ext3 Mkfs.ext3 /dev/sdb1

为第一块SCSI硬盘的第一主分区格式化成

ext3的文件系统

mkfs.ext2 Mkfs.ext2/dev/sdb2 格式化成ext2文件系统

19 磁盘管理 # mount mount -t 文件系统类型 设备路经 访问路经 磁盘管理 # 文件系统类型

ISO9660 光驱文件系统

vfat Fat文件系统(windows)

挂载光驱 # mount –t iso9660 /dev/cdrom /mnt/cdrom

挂载FAT # mount –t vfat /dev/hda5 /mnt/cdrom 挂第一个ide的第五个逻辑分区

17 磁盘管理 # Umount /mnt/cdrom 卸载/mnt/cdrom为空

18 文件权限 # chmod chmod u+s file 为file的属主加上特殊权限

chmod g+r file 为file的属组加上读权限

chmod o+w file 为file的其它用户加上写权限

chmod a-x file 为file的所有用户减去执行权限

chmod 765 file 为file的属主设为完全权限,属组设成读写权,其它用户具有读和执心权限

19 文件权限 # chown chown root /home 把/home的属主改成root用户

20 文件权限 # chgrp chgrp root /home 把/home的属组改成root组

21 打印管理 # redhat-config-printer-tui 进入安装打印机界面

22 打印管理 # lp lp –d hptr file 打印file到hptr的打印机上

23 打印管理 # lpq Lpq –P 打印机名 查看打印机的状态

24 打印管理 # lprm Lprm –P 打印机名 a 删除打印机内的打印作业

25 打印管理 # disable Disable –r “changing paper” HPtr 禁用打印机并提示原因

26 打印管理 # enable Enable HPtr 重新启用被禁用的

27 用户管理 # useradd Useradd 创建一个新的用户

28 用户管理 # groupadd Groupadd 组名 创建一个新的组

29 用户管理 # passwd Passwd 用户名 为用户创建密码

30 用户管理 # Passwd -d Passwd -d用户名 删除用户密码也能登陆

31 用户管理 # Passwd -l Passwd -l用户名 锁定账号密码

32 用户管理 # Passwd -u Passwd -u用户名 解锁账号密码

33 用户管理 # Passwd -S Passwd -S用户名 查询账号密码

34 用户管理 # Usermod -l Usermod -l 新用户名 老用户名 为用户改名

35 用户管理 # Usermod -L Usermod -L 要锁定用户名 锁定用户登陆

36 用户管理 # Usermod -U Usermod –U解锁用户名 解锁用户登陆

37 用户管理 # Usermod -u Usermod –u 501用户名 改变用户UID

38 用户管理 # Userdel Userdel–r 用户名 删除用户一切

39 用户管理 # Groupmod -n Groupmod –n新用户名 老用户名 为组改名

40 用户管理 # Groupmod -g Groupmod –g 501 组名 改变组GID

41 用户管理 # groupdel Groupdel组名 先应删它的用户 删除组

42 用户管理 # gpasswd -a gpasswd -a 用户名 组名 增加用户到组

43 用户管理 # Id id 用户名 查用户信息

44 软件管理 # rpm -qa rpm –qa | less 查询已安装RPM

45 软件管理 # rpm –qa | grep ftp 查询指定RPM

46 软件管理 # rpm -q rpm -q 已安装的RPM包 查是否安装

47 软件管理 # rpm -q telnet-server 查看telnet服务器包

48 软件管理 # rpm -qi rpm –qi 软件包名称 查看软件的描述信息

49 软件管理 # rpm -ql rpm –ql软件包名称 查询软件包的文件列表

50 软件管理 # rpm -qf rpm –qf软件包名称 查询某个文件所属的软件包

51 软件管理 # rpm -qp rpm –qp软件包全名 查询未安装的软件包信息

52 软件管理 # rpm -e rpm –e 软件包名称 删除具体的软件包

53 软件管理 # rpm -U rpm –Uvh软件包全名 升级软件包并显示过程

54 软件管理 # rpm -ivh rpm –ivh 软件包全名 安装软件包并显示过程

55 软件管理 # rpm -V rpm –V软件包名称 验证软件包的大小,类型等

56 软件管理 # tar -c 创建包 –x 释放包 -v 显示命令过程 –z 代表压缩包

57 软件管理 # tar -cf tar –cvf benet.tar /home/benet 把/home/benet目录打包

58 软件管理 # tar -czf tar –zcvf benet.tar.gz /mnt 把目录打包并压缩

59 软件管理 # tar –tf tar –tf benet.tar 看非压缩包的文件列表

60 软件管理 # tar –tzf tar –tf benet.tar.gz 看压缩包的文件列表

61 软件管理 # tar –xf tar –xf benet.tar 非压缩包的文件恢复

62 软件管理 # tar –zxvf tar –zxvf benet.tar.gz 压缩包的文件解压恢复

63 软件管理 # tar -jxvf tar –jxvf benet.tar.bz2

64 软件管理 # diff diff file1 file2 > 补丁名.patch 为新旧文件生成补丁文件

65 软件管理 # diff diff file1 file2 比较两个文件的区别

66 软件管理 # Patch Patch file补丁名.patch 打补丁

67 软件管理 # ./configure --prefix=/usr/local/ 编译前配置

68 软件管理 # make 编译

69 软件管理 # make install 安装编译好的源码包

70 启动管理 # reboot Init 6 重启LINUX系统

71 启动管理 # Halt Init 0 Shutdown –h now 关闭LINUX系统

72 启动管理 # runlevel 显示系统运行级

73 启动管理 # Init [0123456] 改变系统运行级,7种

74 启动管理 # Chkconfig –-list [服务名称] 查看服务的状态

75 启动管理 # Chkconfig –-level <运行级> <服务名> on|off|set 设置服务的启动状态

76 启动管理 # Chkconfig <服务名> on|off|set 设置非独立服务启状态

77 进程管理 # Top动态 Ps-aux静态 进程树pstree 查看系统进程

78 进程管理 # 程序名 & 后台运行程序

79 进程管理 # fg 把后台运行的进程调回前台

80 进程管理 # bg 把前台运行进程调到后台

81 进程管理 # renice Renice +1 180 把180号进程的优先级加1

82 进程管理 # kill Kill PID 终止某个PID进程

83 进程管理 # at at 5pm + 3 days /bin/ls 指定三天后下午5:00执行/bin/ls

84 进程管理 # crontab Crontab -e 用VI的形式来编辑自动周期性任务

85 进程管理 # crontab Crontab -l 查看自动周期性任务

86 进程管理 # crontab Crontab -r 删除自动周期性任务

87 进程管理 # crond Service crond 马上启动自动周期性服务 Service crond <启动|停止|重启|状态>

 

实现磁盘配额 (注安装LINUX时建立/home分区)

目标:对用户zhao在/home目录上实现soft limit为5k,hard limit 为10k的磁盘配额

实现步骤:

1. 修改包含/home的行, #vi /etc/fstab, 改为:defaults,usrquota。也就是增加usrquota项。然后保存退出。

2、卸载/home目录 #umount /home

3. 挂接/home目录 #mount /home

4、增加用户zhao #useradd zhao

5、修改密码 #passwd zhao

6、生成关于/home目录的quota信息 # quotacheck -cmug /home

#quotacheck -vu /home

7、查看所有用户的信息 #repquota -au

8、设置配额 #edquota -u zhao

将soft 和hard 分别改为5和10

9、保存并退出 #wq!

10、修改时间 #edquota -t

11、 #wq!

12.开启/home上的磁盘配额功能 #quotaon /home

13.查询配额 #quota -u zhao

14.验证配额 #su - zhao

$touch myfile

 

chown, chmod or sudo

 

 

 p { margin-bottom: 0.08in; }

 

刚刚接触

Linux

的时候可能处处感到不便,不过没有关系,接触新的事物都有这样的一个过程,在你用过

Linux

一段时间后,你就会逐渐了解

Linux

其实和

Windows

一样容易掌握。

 

 

 

 

由于操作和使用环境的陌生,如果要完全熟悉

Linux

的应用我们首先要解决的问题就是对

Linux

常用命令的熟练掌握。本章我们就来介绍

Linux

的常用基本命令。

 

 

 

首先启动

Linux

。启动完毕后需要进行用户的登录,选择登陆的用户不同自然权限也不一样,其中“系统管理员”拥有最高权限。

 

 

 

 

在启动

Linux

后屏幕出现如下界面显示

:

 

……

 

 

 

RedHat Linux release 9 (Shrike)

 

Kernel2.4.20.8 on an i686

 

login:

 

  输入

:root(

管理员名

)

后,计算机显示输口令

(password:)

,输入你的口令即可。当计算机出现一个“

#”

提示符时,表明你登录成功

!

 

  屏幕显示

Linux

提示符

:

 

[root@localhostroot]#_

 

  这里需要说明的是“

RedHat Linux release 9(Shrike)”

表示当前使用的操作系统的名称及版本。“

2.4.20.8”

表示

Linux

操作系统的核心版本编号。“

i686”

表示该台电脑使用的

CPU

的等级。

 

 

 

  下面我们来介绍常用基本命令

 

 

 

一、注销,关机,重启

 

 

 

  注销系统的

logout

命令

 

 

 

  

1

Logout

注销是登陆的相对操作,登陆系统后,若要离开系统,用户只要直接下达

logout

命令即可

:

 

  

[root@localhostroot]#logout

 

  

RedHat Linuxrelease 9(Shike)

 

  

Kernel2.4.20.8 on an i686

 

  

Login:←

回到登陆的画面

 

 

 

  

2

,关机或重新启动的

shutdown

命令

 

 

 

  

Shutdown

命令可以关闭所有程序,依照用户的需要,重新启动或关机。

 

 

 

  参数说明如下

:

 

立即关机

:-h

  参数让系统立即关机。范例如下

:

 

  

[root@localhostroot]#shutdown –h now ←

要求系统立即关机

 

 

 

  指定关机时间

:time

参数可指定关机的时间

;

或设置多久时间后运行

shutdown

命令,范例如下

:

 

  

[root@localhostroot]#shutdown now ←

立刻关机

 

 

 

  

[root@localhostroot]#shutdown +5 ← 5

分钟后关机

 

 

 

  

[root@localhostroot]#shutdown 10:30 ←

10:30

时关机

 

 

 

关机后自动重启

:-r

  参数设置关机后重新启动。范例如下

:

 

  

[root@localhostroot]#shutdown -r now ←

立刻关闭系统并重启

 

 

 

  

[root@localhostroot]#shutdown -r 23:59 ←

指定在

23:59

时重启动

 

 

 

  

3

,重新启动计算机的

reboot

命令

 

 

 

  顾名思义,

reboot

命令是用来重新启动系统的。常用的参数如下

:

 -f

  参数

:

不依正常的程序运行关机,直接关闭系统并重新启动计算机。

 

 

-I

参数

:

在在重新启动之前关闭所有网络接口。

  

 

 

 

  虽然

reboot

命令有个参数可以使用,但是一般只需要单独运行

reboot

命令就可以了

 

 

 

二、文件与目录的操作

 

 

 

  列出文件列表的

ls

命令

 

 

 

  

1

ls(list)

命令是非常有用的命令,用来显示当前目录中的文件和子目录列表。配合参数的使用,能以不同的方式显示目录内容。范例如下

:

 

  

?

显示当前目录的内容

:

 

  

[tony@freetony]$ ls

 

  

Desktopmail myinstall.log test.txt ←

有两个目录及两个文件夹

 

 

 

  

?

当运行

ls

命令时,并不会显示名称以“

.”

开头的文件。因此可加上“

-a”

参数指定要列出这些文件。范例如下

:

 

 

  

[tony@freetony]$ ls –a

 

  

?

以“

-s”

参数显示每个文件所有的空间,并以“

-S”

参数指定按所有占用空间的大小排序。范例如下

:

 

  

[tony@freetony]$ ls –s –S

 

  总计

36

 

  

4Desktop 4 mail 24 myinstall.log 4 test.txt

 

  

?

ls

命令后直接加上欲显示的目录路径,就会列出该目录的内容。范例如下

:

 

  

[tony@freetony]$ ls –l/usr/games

 

  

2

,切换目录的

cd

命令

 

 

 

  

cd(changedirectory)

命令可让用户切当前所在的目录。范例如下

:

 

  

[tony@freehome]$ cd tony ←

切换到当前目录下的

tony

子目录

 

 

 

  

[tony@freetony]$ cd .. ←

切换到上一层目录

 

 

 

  

[tony@freehome]$ cd / ←

切换到系统根目录

 

 

 

  

[tony@free/]$ cd ←

切换到用户主目录

 

 

 

  

[tony@freetony]$ cd /usr/bin ←

切换到

/usr/bin

目录

 

 

 

  

3

,创建目录的

mkdir

命令

 

 

 

  

Mkdir(makedirectory)

命令可用来创建子目录。下面的范例会在所在目录下创建

tool

子目录。

 

 

 

  

[tony@freetony]$ mkdir tool

 

  

4

,删除目录的

rmdir

命令

 

 

 

  

rmdir(removedirectory)

命令可用来删除“空”的子目录。范例如下

:

 

  

[tony@fre5

,复制文件的

cp

命令

 

 

 

  

cp(copy)

命令可以将文件从一处复制到另一处。一般在使用

cp

命令将以个文件复制成另一个文件或复制到某个目录时,需要指定原始文件名与目的文件名或目录。范例如下

:

 

  

[tony@freetony]$ cp data1.txt data2.txt ←

data1.txt

复制成

data2.txt

 

  

[tony@freetony]$ cp data3.txt /tmp/data ←

data3

复制到

/tmp/data

目录中

 

 

 

 

  

?

显示复制过程

:

加入

-v

参数可显示命令执行过程。范例如下

:

 

  

[tony@freetony]$ cp zip.txt zip2.txt ←

一般状态下不会显示复制过程

 

 

 

  

[tony@freetony]$ cp –v zip.txt zip3.txt ←

-v

显示复制过程

 

 

 

  

zip.txt->zip3.txt

 

  

?

递回复制

:

加入“

-R”

参数可同时复制目录下的所有文件及子目录。范例如下

:

 

  

[tony@freetony]$ cp –v –R * backup ←

将所有文件

(

含子目录文件

)

复制到

backup

目录

 

 

 

  

6

,删除文件或目录的

rm

命令

 

 

 

  

rm(remove)

命令可以删除文件或目录。范例如下

:

 

  

[tony@freetony]$ rm myfile ←

删除指定的文件

 

 

 

  

[tony@freetony]$ rm * ←

删除当前目录中的所有文件

 

 

 

  

rm

命令的常用参数如下

:

 

  

?

强迫删除

:

使用

-f

参数时,

rm

命令会直接删除文件,不再询问。范例如下

:

 

  

[tony@freetony]$ rm –f *.txt ←

强迫删除文件

 

 

 

  

?

递回删除

:-r

也是一个相当常用的参数,使用此参数可同时删除指定目录下的所有文件及子目录。范例如下

:

 

  

[tony@freetony]$ rm –r data ←

删除

data

目录

(

data

目录下所有文件和子目录

)

 

  

[tony@freetony]$ rm –r * ←

删除所有文件

(

含当前目录所有文件,所有子目录和子目录下的文件

)

 

  

?

强制删除指定目录

:

当使用

-r

参数删除目录时,若该目录下有许多子目录及文件,则系统会不间断地询问,以确认您的确要删除目录或文件。若已确定要删除所存目录及文件,则可以使用

-rf

参数,如此一来,系统将直接删除该目录中所有的文件及子目录,不再询问。范例如下

:

 

  

[tony@freetony]$ rm –rf tmp

强制删除

tmp

目录及该目录下所有文件及子目录

 

 

 

  

?

显示删除过程

:

使用

-v

参数。范例如下

:

 

  

[tony@freetony]$ rm –v

e tony]$ rmdir tool ←

删除

tool

目录

 

 

7

,让显示画面暂停的

more

命令

 

 

 

  为了避免画面显示瞬间就闪过去,用户可以使用

more

命令,让画面在显示满一页时暂停,此时可按空格键继续显示下一个画面,或按

Q

键停止显示。

 

 

 

  

?

当使用

ls

命令查看文件列表时,若文件太多则可以配合

more

命令使用。范例如下

:

 

  

[tony@freebin]$ ls –al

 

  

more

 

  

?

单独使用

more

命令时,可用来显示文字文件的内容。范例如下

:

 

 

  

[tony@freetony]$ more data.txt

 

  

8,

连接文件的

cat

命令

 

 

 

  

cat(concatenate)

命令可以显示文件的内容

(

经常和

more

命令搭配使用

)

,或是将数个文件合并成一个文件。范例如下

:

 

  

?

逐页显示

 

preface.txt

的内容

:

 

  

[tony@freetony]$ cat preface.txt

 

  

more

 

  

?

preface.txt

附加到

outline.txt

文件之后

:

 

  

[tony@freetony]$ cat preface.txt >> outline.txt

 

  

?

new.txt

info.txt

合并成

readme.txt

文件

:

 

  

[tony@freetony]$ cat new.txt info.txt >readme.txt

 

  

9,

移动或更换文件,目录名称的

mv

命令

 

 

 

  

mv(move)

命令可以将文件及目录移动到另一个目录下面,或更换文件及目录的名称。范例如下

:

 

  

[tony@freebackup]$ mv a.txt .. ←

a.txt

文件移到上层目录

 

 

 

  

[tony@freebackup]$ mv z1.txt z3.txt ←

 

z1.txt

改名成

z3.txt

 

  

[tony@freebackup]$ cd.. ←

切换到上一层目录

 

 

 

  

[tony@freetony]$ mv backup.. ← backup

目录上移一层

 

 

10

,显示当前所在目录的

pwd

命令

 

 

 

  

pwd(printworking directory)

命令可显示用户当前所在的目录。范例如下

:

 

  

[tony@freetony]$ pwd

 

  

/home/tony←

当前所在目录为“

/home/tony”

 

  

11,

查找文件的

locate

命令

 

 

 

  

locate

命令可用来搜索包含指定条件字符串的文件或目录。范例如下

:

 

 

  

[tony@freetony]$ locate zh_CN

列出所有包含“

zh_CN”

字符串的文件和目录。

 

 

 

  由于

locate

命令是从系统中保存文件及目录名称的数据库中搜索文件,虽然系统会定时更新数据库,但对于刚新增或删除的文件、目录,仍然可能会因为数据库尚未更新而无法查得,此时可用

root

身份运行

updatedb

命令更新,为此数据库得内容正确。

 

 

 

  

12

,搜索字符串得

grep

命令

 

 

 

  

grep

命令可以搜索特定字符串来并显示出来,一般用来过滤先前得结果,避免显示太多不必要得信息。范例如下

:

 

  

[tony@freeetc]$ grep text *.conf ←

搜索当前目录中扩展名为

.conf

且包含“

text”

字符串得文件。

 

 

 

  

grep:amd.conf:←

拒绝不符权限得操作

 

 

 

  

grep:diskcheck.conf:←

拒绝不符权限得操作

 

 

 

  

grep:grub.conf←

拒绝不符权限得操作

 

 

 

  

?

若您是使用一般权限的用户运行,上例的输出结果会包含很多如“拒绝不符权限的操作之类的错误信息,可使用

-s

参数消除。

 

 

 

  

[tony@freeetc]$ grep –s text *.conf

 

  

13

,重导与管道

 

 

 

  重导

(redirect)

可将某命令的结果输出导文件中,它有两中命令

:“>”

和“

>>”

。“

>”

可将结果输出到文件中,该文件原有的内容会被删除

:“>>”

则将结果附加到文件中,原文件内容不会被清除。范例如下

:

 

  

[tony@freetony]$ ls –a>dir.txt ←

ls–a

命令执行结果输出到

dir.txt

文件。

 

 

 

  

[tony@freetony]$ cat data1.txt >> data2.txt ←

 

data1.txt

内容附加到

data2.txt

文件之后。

 

 

 

  通道

(pipe)

命令的符号是“ ”,可将某命令的结果输出给另一命令,一下范例将

ls

命令的输出结果传给

grep

命令过滤

:

 

  

[tony@freeetc]$ ls

 

  

gerpconf ←

搜索并显示

ls

命令运行结果中包含有“

conf”

字符串

 

 

 

  在举一个删除文件或目录的例子,可以利用

yes

命令重复输出“

y”

字符的特性,将结果传给

rm

命令,如此即可避免重复输入“

y”:

 

  

[tony@freetony]$ yes

 

  

rm–r mydir

 

 

 

抱歉!评论已关闭.