>

Linux的基本操作,所接触到的技术也就会越来越多

- 编辑:澳门博发娱乐官网 -

Linux的基本操作,所接触到的技术也就会越来越多

Ctrl+Alt+(F1-F6):切换虚拟终端

1.常用命令解析

当涉及的范围越来越广时,所接触到的技术也就会越来越多!贴上常用的Linux命令集:

 

 

  1. 系统信息  
  2. arch 显示机器的处理器架构(1)  
  3. uname -m 显示机器的处理器架构(2)  
  4. uname -r 显示正在使用的内核版本  
  5. dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)  
  6. hdparm -i /dev/hda 罗列一个磁盘的架构特性  
  7. hdparm -tT /dev/sda 在磁盘上执行测试性读取操作  
  8. cat /proc/cpuinfo 显示CPU info的信息  
  9. cat /proc/interrupts 显示中断  
  10. cat /proc/meminfo 校验内存使用  
  11. cat /proc/swaps 显示哪些swap被使用  
  12. cat /proc/version 显示内核的版本  
  13. cat /proc/net/dev 显示网络适配器及统计  
  14. cat /proc/mounts 显示已加载的文件系统  
  15. lspci -tv 罗列 PCI 设备  
  16. lsusb -tv 显示 USB 设备  
  17. date 显示系统日期  
  18. cal 2007 显示2007年的日历表  
  19. date 041217002007.00 设置日期和时间 - 月日时分年.秒  
  20. clock -w 将时间修改保存到 BIOS  
  21.   
  22. 关机 (系统的关机、重启以及登出 )  
  23. shutdown -h now 关闭系统(1)  
  24. init 0 关闭系统(2)  
  25. telinit 0 关闭系统(3)  
  26. shutdown -h hours:minutes & 按预定时间关闭系统  
  27. shutdown -c 取消按预定时间关闭系统  
  28. shutdown -r now 重启(1)  
  29. reboot 重启(2)  
  30. logout 注销  
  31.   
  32. 文件和目录  
  33. cd /home 进入 '/ home' 目录'  
  34. cd .. 返回上一级目录  
  35. cd ../.. 返回上两级目录  
  36. cd 进入个人的主目录  
  37. cd ~user1 进入个人的主目录  
  38. cd - 返回上次所在的目录  
  39. pwd 显示工作路径  
  40. ls 查看目录中的文件  
  41. ls -F 查看目录中的文件  
  42. ls -l 显示文件和目录的详细资料  
  43. ls -a 显示隐藏文件  
  44. ls *[0-9]* 显示包含数字的文件名和目录名  
  45. tree 显示文件和目录由根目录开始的树形结构(1)  
  46. lstree 显示文件和目录由根目录开始的树形结构(2)  
  47. mkdir dir1 创建一个叫做 'dir1' 的目录'  
  48. mkdir dir1 dir2 同时创建两个目录  
  49. mkdir -p /tmp/dir1/dir2 创建一个目录树  
  50. rm -f file1 删除一个叫做 'file1' 的文件'  
  51. rmdir dir1 删除一个叫做 'dir1' 的目录'  
  52. rm -rf dir1 删除一个叫做 'dir1' 的目录并同时删除其内容  
  53. rm -rf dir1 dir2 同时删除两个目录及它们的内容  
  54. mv dir1 new_dir 重命名/移动 一个目录  
  55. cp file1 file2 复制一个文件  
  56. cp dir/* . 复制一个目录下的所有文件到当前工作目录  
  57. cp -a /tmp/dir1 . 复制一个目录到当前工作目录  
  58. cp -a dir1 dir2 复制一个目录  
  59. ln -s file1 lnk1 创建一个指向文件或目录的软链接  
  60. ln file1 lnk1 创建一个指向文件或目录的物理链接  
  61. touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm)  
  62. file file1 outputs the mime type of the file as text  
  63. iconv -l 列出已知的编码  
  64. iconv -f fromEncoding -t toEncoding inputFile > outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding.  
  65. find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" ; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)  
  66.   
  67. 文件搜索  
  68. find / -name file1 从 '/' 开始进入根文件系统搜索文件和目录  
  69. find / -user user1 搜索属于用户 'user1' 的文件和目录  
  70. find /home/user1 -name *.bin 在目录 '/ home/user1' 中搜索带有'.bin' 结尾的文件  
  71. find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件  
  72. find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件  
  73. find / -name *.rpm -exec chmod 755 '{}' ; 搜索以 '.rpm' 结尾的文件并定义其权限  
  74. find / -xdev -name *.rpm 搜索以 '.rpm' 结尾的文件,忽略光驱、捷盘等可移动设备  
  75. locate *.ps 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令  
  76. whereis halt 显示一个二进制文件、源码或man的位置  
  77. which halt 显示一个二进制文件或可执行文件的完整路径  
  78.   
  79. 挂载一个文件系统  
  80. mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 '/ mnt/hda2' 已经存在  
  81. umount /dev/hda2 卸载一个叫做hda2的盘 - 先从挂载点 '/ mnt/hda2' 退出  
  82. fuser -km /mnt/hda2 当设备繁忙时强制卸载  
  83. umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用  
  84. mount /dev/fd0 /mnt/floppy 挂载一个软盘  
  85. mount /dev/cdrom /mnt/cdrom 挂载一个cdrom或dvdrom  
  86. mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom  
  87. mount /dev/hdb /mnt/cdrecorder 挂载一个cdrw或dvdrom  
  88. mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件  
  89. mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统  
  90. mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备  
  91. mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享  
  92.   
  93. 磁盘空间  
  94. df -h 显示已经挂载的分区列表  
  95. ls -lSr |more 以尺寸大小排列文件和目录  
  96. du -sh dir1 估算目录 'dir1' 已经使用的磁盘空间'  
  97. du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小  
  98. rpm -q -a --qf '%10{SIZE}t%{NAME}n' | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)  
  99. dpkg-query -W -f='${Installed-Size;10}t${Package}n' | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)  
  100.   
  101. 用户和群组  
  102. groupadd group_name 创建一个新用户组  
  103. groupdel group_name 删除一个用户组  
  104. groupmod -n new_group_name old_group_name 重命名一个用户组  
  105. useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 创建一个属于 "admin" 用户组的用户  
  106. useradd user1 创建一个新用户  
  107. userdel -r user1 删除一个用户 ( '-r' 排除主目录)  
  108. usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性  
  109. passwd 修改口令  
  110. passwd user1 修改一个用户的口令 (只允许root执行)  
  111. chage -E 2005-12-31 user1 设置用户口令的失效期限  
  112. pwck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的用户  
  113. grpck 检查 '/etc/passwd' 的文件格式和语法修正以及存在的群组  
  114. newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组  
  115.   
  116. 文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消  
  117. ls -lh 显示权限  
  118. ls /tmp | pr -T5 -W$COLUMNS 将终端划分成5栏显示  
  119. chmod ugo+rwx directory1 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限  
  120. chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限  
  121. chown user1 file1 改变一个文件的所有人属性  
  122. chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性  
  123. chgrp group1 file1 改变文件的群组  
  124. chown user1:group1 file1 改变一个文件的所有人和群组属性  
  125. find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件  
  126. chmod u+s /bin/file1 设置一个二进制文件的 SUID 位 - 运行该文件的用户也被赋予和所有者同样的权限  
  127. chmod u-s /bin/file1 禁用一个二进制文件的 SUID位  
  128. chmod g+s /home/public 设置一个目录的SGID 位 - 类似SUID ,不过这是针对目录的  
  129. chmod g-s /home/public 禁用一个目录的 SGID 位  
  130. chmod o+t /home/public 设置一个文件的 STIKY 位 - 只允许合法所有人删除文件  
  131. chmod o-t /home/public 禁用一个目录的 STIKY 位  
  132.   
  133. 文件的特殊属性 - 使用 "+" 设置权限,使用 "-" 用于取消  
  134. chattr +a file1 只允许以追加方式读写文件  
  135. chattr +c file1 允许这个文件能被内核自动压缩/解压  
  136. chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件  
  137. chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接  
  138. chattr +s file1 允许一个文件被安全地删除  
  139. chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘  
  140. chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件  
  141. lsattr 显示特殊的属性  
  142.   
  143. 打包和压缩文件  
  144. bunzip2 file1.bz2 解压一个叫做 'file1.bz2'的文件  
  145. bzip2 file1 压缩一个叫做 'file1' 的文件  
  146. gunzip file1.gz 解压一个叫做 'file1.gz'的文件  
  147. gzip file1 压缩一个叫做 'file1'的文件  
  148. gzip -9 file1 最大程度压缩  
  149. rar a file1.rar test_file 创建一个叫做 'file1.rar' 的包  
  150. rar a file1.rar file1 file2 dir1 同时压缩 'file1', 'file2' 以及目录 'dir1'  
  151. rar x file1.rar 解压rar包  
  152. unrar x file1.rar 解压rar包  
  153. tar -cvf archive.tar file1 创建一个非压缩的 tarball  
  154. tar -cvf archive.tar file1 file2 dir1 创建一个包含了 'file1', 'file2' 以及 'dir1'的档案文件  
  155. tar -tf archive.tar 显示一个包中的内容  
  156. tar -xvf archive.tar 释放一个包  
  157. tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下  
  158. tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包  
  159. tar -xvfj archive.tar.bz2 解压一个bzip2格式的压缩包  
  160. tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包  
  161. tar -xvfz archive.tar.gz 解压一个gzip格式的压缩包  
  162. zip file1.zip file1 创建一个zip格式的压缩包  
  163. zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包  
  164. unzip file1.zip 解压一个zip格式压缩包  
  165.   
  166. RPM 包 - (Fedora, Redhat及类似系统)  
  167. rpm -ivh package.rpm 安装一个rpm包  
  168. rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告  
  169. rpm -U package.rpm 更新一个rpm包但不改变其配置文件  
  170. rpm -F package.rpm 更新一个确定已经安装的rpm包  
  171. rpm -e package_name.rpm 删除一个rpm包  
  172. rpm -qa 显示系统中所有已经安装的rpm包  
  173. rpm -qa | grep httpd 显示所有名称中包含 "httpd" 字样的rpm包  
  174. rpm -qi package_name 获取一个已安装包的特殊信息  
  175. rpm -qg "System Environment/Daemons" 显示一个组件的rpm包  
  176. rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表  
  177. rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表  
  178. rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关系的列表  
  179. rpm -q package_name --whatprovides 显示一个rpm包所占的体积  
  180. rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l  
  181. rpm -q package_name --changelog 显示一个rpm包的修改历史  
  182. rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供  
  183. rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表  
  184. rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书  
  185. rpm --checksig package.rpm 确认一个rpm包的完整性  
  186. rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性  
  187. rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间  
  188. rpm -Va 检查系统中所有已安装的rpm包- 小心使用  
  189. rpm -Vp package.rpm 确认一个rpm包还未安装  
  190. rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从一个rpm包运行可执行文件  
  191. rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从一个rpm源码安装一个构建好的包  
  192. rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包  
  193.   
  194. YUM 软件包升级器 - (Fedora, RedHat及类似系统)  
  195. yum install package_name 下载并安装一个rpm包  
  196. yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系  
  197. yum update package_name.rpm 更新当前系统中所有安装的rpm包  
  198. yum update package_name 更新一个rpm包  
  199. yum remove package_name 删除一个rpm包  
  200. yum list 列出当前系统中安装的所有包  
  201. yum search package_name 在rpm仓库中搜寻软件包  
  202. yum clean packages 清理rpm缓存删除下载的包  
  203. yum clean headers 删除所有头文件  
  204. yum clean all 删除所有缓存的包和头文件  
  205.   
  206. DEB 包 (Debian, Ubuntu 以及类似系统)  
  207. dpkg -i package.deb 安装/更新一个 deb 包  
  208. dpkg -r package_name 从系统删除一个 deb 包  
  209. dpkg -l 显示系统中所有已经安装的 deb 包  
  210. dpkg -l | grep httpd 显示所有名称中包含 "httpd" 字样的deb包  
  211. dpkg -s package_name 获得已经安装在系统中一个特殊包的信息  
  212. dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表  
  213. dpkg --contents package.deb 显示尚未安装的一个包所提供的文件列表  
  214. dpkg -S /bin/ping 确认所给的文件由哪个deb包提供  
  215.   
  216. APT 软件工具 (Debian, Ubuntu 以及类似系统)  
  217. apt-get install package_name 安装/更新一个 deb 包  
  218. apt-cdrom install package_name 从光盘安装/更新一个 deb 包  
  219. apt-get update 升级列表中的软件包  
  220. apt-get upgrade 升级所有已安装的软件  
  221. apt-get remove package_name 从系统删除一个deb包  
  222. apt-get check 确认依赖的软件仓库正确  
  223. apt-get clean 从下载的软件包中清理缓存  
  224. apt-cache search searched-package 返回包含所要搜索字符串的软件包名称  
  225.   
  226. 查看文件内容  
  227. cat file1 从第一个字节开始正向查看文件的内容  
  228. tac file1 从最后一行开始反向查看一个文件的内容  
  229. more file1 查看一个长文件的内容  
  230. less file1 类似于 'more' 命令,但是它允许在文件中和正向操作一样的反向操作  
  231. head -2 file1 查看一个文件的前两行  
  232. tail -2 file1 查看一个文件的最后两行  
  233. tail -f /var/log/messages 实时查看被添加到一个文件中的内容  
  234.   
  235. 文本处理  
  236. cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT  
  237. cat file1 | command( sed, grep, awk, grep, etc...) > result.txt 合并一个文件的详细说明文本,并将简介写入一个新文件中  
  238. cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt 合并一个文件的详细说明文本,并将简介写入一个已有的文件中  
  239. grep Aug /var/log/messages 在文件 '/var/log/messages'中查找关键词"Aug"  
  240. grep ^Aug /var/log/messages 在文件 '/var/log/messages'中查找以"Aug"开始的词汇  
  241. grep [0-9] /var/log/messages 选择 '/var/log/messages' 文件中所有包含数字的行  
  242. grep Aug -R /var/log/* 在目录 '/var/log' 及随后的目录中搜索字符串"Aug"  
  243. sed 's/stringa1/stringa2/g' example.txt 将example.txt文件中的 "string1" 替换成 "string2"  
  244. sed '/^$/d' example.txt 从example.txt文件中删除所有空白行  
  245. sed '/ *#/d; /^$/d' example.txt 从example.txt文件中删除所有注释和空白行  
  246. echo 'esempio' | tr '[:lower:]' '[:upper:]' 合并上下单元格内容  
  247. sed -e '1d' result.txt 从文件example.txt 中排除第一行  
  248. sed -n '/stringa1/p' 查看只包含词汇 "string1"的行  
  249. sed -e 's/ *$//' example.txt 删除每一行最后的空白字符  
  250. sed -e 's/stringa1//g' example.txt 从文档中只删除词汇 "string1" 并保留剩余全部  
  251. sed -n '1,5p;5q' example.txt 查看从第一行到第5行内容  
  252. sed -n '5p;5q' example.txt 查看第5行  
  253. sed -e 's/00*/0/g' example.txt 用单个零替换多个零  
  254. cat -n file1 标示文件的行数  
  255. cat example.txt | awk 'NR%2==1' 删除example.txt文件中的所有偶数行  
  256. echo a b c | awk '{print $1}' 查看一行第一栏  
  257. echo a b c | awk '{print $1,$3}' 查看一行的第一和第三栏  
  258. paste file1 file2 合并两个文件或两栏的内容  
  259. paste -d '+' file1 file2 合并两个文件或两栏的内容,中间用"+"区分  
  260. sort file1 file2 排序两个文件的内容  
  261. sort file1 file2 | uniq 取出两个文件的并集(重复的行只保留一份)  
  262. sort file1 file2 | uniq -u 删除交集,留下其他的行  
  263. sort file1 file2 | uniq -d 取出两个文件的交集(只留下同时存在于两个文件中的文件)  
  264. comm -1 file1 file2 比较两个文件的内容只删除 'file1' 所包含的内容  
  265. comm -2 file1 file2 比较两个文件的内容只删除 'file2' 所包含的内容  
  266. comm -3 file1 file2 比较两个文件的内容只删除两个文件共有的部分  
  267.   
  268. 字符设置和文件格式转换  
  269. dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX  
  270. unix2dos fileunix.txt filedos.txt 将一个文本文件的格式从UNIX转换成MSDOS  
  271. recode ..HTML < page.txt > page.html 将一个文本文件转换成html  
  272. recode -l | more 显示所有允许的转换格式  
  273.   
  274. 文件系统分析  
  275. badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块  
  276. fsck /dev/hda1 修复/检查hda1磁盘上linux文件系统的完整性  
  277. fsck.ext2 /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性  
  278. e2fsck /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性  
  279. e2fsck -j /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性  
  280. fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性  
  281. fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统的完整性  
  282. fsck.msdos /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性  
  283. dosfsck /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性  
  284.   
  285. 初始化一个文件系统  
  286. mkfs /dev/hda1 在hda1分区创建一个文件系统  
  287. mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统  
  288. mke2fs -j /dev/hda1 在hda1分区创建一个linux ext3(日志型)的文件系统  
  289. mkfs -t vfat 32 -F /dev/hda1 创建一个 FAT32 文件系统  
  290. fdformat -n /dev/fd0 格式化一个软盘  
  291. mkswap /dev/hda3 创建一个swap文件系统  
  292.   
  293. SWAP文件系统  
  294. mkswap /dev/hda3 创建一个swap文件系统  
  295. swapon /dev/hda3 启用一个新的swap文件系统  
  296. swapon /dev/hda2 /dev/hdb3 启用两个swap分区  
  297.   
  298. 备份  
  299. dump -0aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的完整备份  
  300. dump -1aj -f /tmp/home0.bak /home 制作一个 '/home' 目录的交互式备份  
  301. restore -if /tmp/home0.bak 还原一个交互式备份  
  302. rsync -rogpav --delete /home /tmp 同步两边的目录  
  303. rsync -rogpav -e ssh --delete /home ip_address:/tmp 通过SSH通道rsync  
  304. rsync -az -e ssh --delete ip_addr:/home/public /home/local 通过ssh和压缩将一个远程目录同步到本地目录  
  305. rsync -az -e ssh --delete /home/local ip_addr:/home/public 通过ssh和压缩将本地目录同步到远程目录  
  306. dd bs=1M if=/dev/hda | gzip | ssh user@ip_addr 'dd of=hda.gz' 通过ssh在远程主机上执行一次备份本地磁盘的操作  
  307. dd if=/dev/sda of=/tmp/file1 备份磁盘内容到一个文件  
  308. tar -Puf backup.tar /home/user 执行一次对 '/home/user' 目录的交互式备份操作  
  309. ( cd /tmp/local/ && tar c . ) | ssh -C user@ip_addr 'cd /home/share/ && tar x -p' 通过ssh在远程目录中复制一个目录内容  
  310. ( tar c /home ) | ssh -C user@ip_addr 'cd /home/backup-home && tar x -p' 通过ssh在远程目录中复制一个本地目录  
  311. tar cf - . | (cd /tmp/backup ; tar xf - ) 本地将一个目录复制到另一个地方,保留原有权限及链接  
  312. find /home/user1 -name '*.txt' | xargs cp -av --target-directory=/home/backup/ --parents 从一个目录查找并复制所有以 '.txt' 结尾的文件到另一个目录  
  313. find /var/log -name '*.log' | tar cv --files-from=- | bzip2 > log.tar.bz2 查找所有以 '.log' 结尾的文件并做成一个bzip包  
  314. dd if=/dev/hda of=/dev/fd0 bs=512 count=1 做一个将 MBR (Master Boot Record)内容复制到软盘的动作  
  315. dd if=/dev/fd0 of=/dev/hda bs=512 count=1 从已经保存到软盘的备份中恢复MBR内容  
  316.   
  317. 光盘  
  318. cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 清空一个可复写的光盘内容  
  319. mkisofs /dev/cdrom > cd.iso 在磁盘上创建一个光盘的iso镜像文件  
  320. mkisofs /dev/cdrom | gzip > cd_iso.gz 在磁盘上创建一个压缩了的光盘iso镜像文件  
  321. mkisofs -J -allow-leading-dots -R -V "Label CD" -iso-level 4 -o ./cd.iso data_cd 创建一个目录的iso镜像文件  
  322. cdrecord -v dev=/dev/cdrom cd.iso 刻录一个ISO镜像文件  
  323. gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom - 刻录一个压缩了的ISO镜像文件  
  324. mount -o loop cd.iso /mnt/iso 挂载一个ISO镜像文件  
  325. cd-paranoia -B 从一个CD光盘转录音轨到 wav 文件中  
  326. cd-paranoia -- "-3" 从一个CD光盘转录音轨到 wav 文件中(参数-3)  
  327. cdrecord --scanbus 扫描总线以识别scsi通道  
  328. dd if=/dev/hdc | md5sum 校验一个设备的md5sum编码,例如一张 CD  
  329.   
  330. 网络 - (以太网和WIFI无线)  
  331. ifconfig eth0 显示一个以太网卡的配置  
  332. ifup eth0 启用一个 'eth0' 网络设备  
  333. ifdown eth0 禁用一个 'eth0' 网络设备  
  334. ifconfig eth0 192.168.1.1 netmask 255.255.255.0 控制IP地址  
  335. ifconfig eth0 promisc 设置 'eth0' 成混杂模式以嗅探数据包 (sniffing)  
  336. dhclient eth0 以dhcp模式启用 'eth0'  
  337. route -n show routing table  
  338. route add -net 0/0 gw IP_Gateway configura default gateway  
  339. route add -net 192.168.0.0 netmask 255.255.0.0 gw 192.168.1.1 configure static route to reach network '192.168.0.0/16'  
  340. route del 0/0 gw IP_gateway remove static route  
  341. echo "1" > /proc/sys/net/ipv4/ip_forward activate ip routing  
  342. hostname show hostname of system  
  343. host www.example.com lookup hostname to resolve name to ip address and viceversa(1)  
  344. nslookup www.example.com lookup hostname to resolve name to ip address and viceversa(2)  
  345. ip link show show link status of all interfaces  
  346. mii-tool eth0 show link status of 'eth0'  
  347. ethtool eth0 show statistics of network card 'eth0'  
  348. netstat -tup show all active network connections and their PID  
  349. netstat -tupl show all network services listening on the system and their PID  
  350. tcpdump tcp port 80 show all HTTP traffic  
  351. iwlist scan show wireless networks  
  352. iwconfig eth1 show configuration of a wireless network card  
  353. hostname show hostname  
  354. host www.example.com lookup hostname to resolve name to ip address and viceversa  
  355. nslookup www.example.com lookup hostname to resolve name to ip address and viceversa  
  356. whois www.example.com lookup on Whois database  
  357.   
  358. Microsoft Windows networks (SAMBA)  
  359. nbtscan ip_addr netbios name resolution  
  360. nmblookup -A ip_addr netbios name resolution  
  361. smbclient -L ip_addr/hostname show remote shares of a windows host  
  362. smbget -Rr smb://ip_addr/share like wget can download files from a host windows via smb  
  363. mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share mount a windows network share  

目前最完整的Linux常用基础命令

常用指令

 

Ctrl+Alt:鼠标切换界面

2.常用命令二

  1. su   
  2. su命令是最基本的命令之一,常用于不同用户间切换。例如,如果登录为 user1,要切换为user2,只要用如下命令:   
  3. $su user2   
  4. 然后系统提示输入user2口令,输入正确的口令之后就可以切换到user2。完成之后就可以用exit命令返回到user1。   
  5. su命令的常见用法是变成根用户或超级用户。如果发出不带用户名的su命令 ,则系统提示输入根口令,输入之后则可切换为根用户。   
  6. 如果登录为根用户,则可以用su命令成为系统上任何用户而不需要口令。  
  7.   
  8. pwd   
  9. pwd命令也是最常用最基本的命令之一,用于显示用户当前所在的目录。  
  10.   
  11. cd   
  12. cd命令不仅显示当前状态,还改变当前状态,它的用发跟dos下的cd命令基本一致。   
  13. cd ..可进入上一层目录   
  14. cd -可进入上一个进入的目录   
  15. cd ~可进入用户的home目录  
  16.   
  17. ls   
  18. ls命令跟dos下的dir命令一样,用于显示当前目录的内容。   
  19. 如果想取得详细的信息,可用ls -l命令, 这样就可以显示目录内容的详细信息。   
  20. 如果目录下的文件太多,用一屏显示不了,可以用ls -l |more分屏显示 。  
  21.   
  22. find   
  23. find命令用于查找文件。这个命令可以按文件名、建立或修改日期、所有者(通常是建立文件的用户)、文件长度或文件类型进行搜索。   
  24. find命令的基本结构如下:   
  25. $find   
  26. 其中指定从哪个目录开始搜索。指定搜索条件。表示找到文件怎么处理。一般来说,要用-print动作,显示 整个文件路径和名称。如果没有这个动作,则find命令进行所要搜索而不显示结果,等于白费劲。   
  27. 例如,要搜索系统上所有名称为ye的文件,可用如下命令:   
  28. $find / -name ye -print   
  29. 这样就可以显示出系统上所有名称为ye的文件。  
  30.   
  31. tar   
  32. tar最初用于建立磁带备份系统,目前广泛用于建立文件发布档案。可用如下方法建立tar档案:   
  33. $tar cvf   
  34. 例如,如果要将当前目录中所有文件存档到ye.tar中,可用如下命令:   
  35. $tar cvf ye.tar *.*   
  36. 要浏览档案内容,将c选项变成t。如果要浏览ye.tar档案中的内容,可用如下命令:   
  37. $tar tvf ye.tar   
  38. 要取出档案内的内容,将c选项变成x。如果要将ye.tar档案中的内容取到当前目录中,可用如下命令:   
  39. $tar xvf ye.tar  
  40.   
  41. gzip   
  42. gzip命令用于压缩文件。 例如,如果要将ye.txt文件压缩,可用如下命令:   
  43. $gzip ye.txt   
  44. 这样就可以压缩文件并在文件名后面加上gz扩展名,变成文件ye.txt.gz。   
  45. 解压缩文件可用gzip -d命令实现:   
  46. $gzip -d ye.txt.gz   
  47. 这样就可以解压缩文件并删除gz扩展名。除此之外还可以用gunzip命令来解 压缩文件,效果跟用gzip -d命令一样。   
  48. 旧版的tar命令不压缩档案,可用gzip压缩。例如:   
  49. $tar cvf ye.tar *.txt   
  50. $gzip ye.tar   
  51. 则可建立压缩档案ye.tar.gz。   
  52. 新版的tar可以直接访问和建立gzip压缩的tar档案,只要在tar命令中加上z 选项就可以了。例如:   
  53. $tar czvf ye.tar *.txt   
  54. 生成压缩档案ye.tar.gz,   
  55. $tar tzvf ye.tar *.txt   
  56. 显示压缩档案ye.tar.gz的内容,而   
  57. $tar xzvf ye.tar *.txt   
  58. 取出压缩档案ye.tar.gz的内容。  
  59.   
  60. mkdir   
  61. 这个命令很简单,跟dos的md命令用法几乎一样,用于建立目录。  
  62.   
  63. cp   
  64. cp命令用于复制文件或目录。   
  65. cp命令可以一次复制多个文件,例如:   
  66. $cp *.txt *.doc *.bak /home   
  67. 将当前目录中扩展名为txt、doc和bak的文件全部复制到/home目录中。   
  68. 如果要复制整个目录及其所有子目录,可以用cp -R命令。  
  69.   
  70. rm   
  71. rm命令用于删除文件或目录。   
  72. rm命令会强制删除文件,如果想要在删除时提示确认,可用rm -i命令。   
  73. 如果要删除目录,可用rm -r命令。rm -r命令在删除目录时,每删除一个文件或目录都会显示提示,如果目录太大,响应每个提示是不现实的。这时可以用 rm -rf命令来强制删除目录,这样即使用了-i标志也当无效处理。  
  74.   
  75. mv   
  76. mv命令用于移动文件和更名文件。例如:   
  77. $mv ye.txt /home   
  78. 将当前目录下的ye.txt文件移动到/home目录下,   
  79. $mv ye.txt ye1.txt   
  80. 将ye.txt文件改名为ye1.txt。   
  81. 类似于跟cp命令,mv命令也可以一次移动多个文件,在此不再赘叙。  
  82.   
  83. reboot    支持 叉车出租
  84.   
  85.    
  86.   
  87. ◆ 安装和登录命令:login、shutdown、halt、reboot、install、mount、umount、chsh、exit、last;   
  88.   
  89. ◆ 文件处理命令:file、mkdir、grep、dd、find、mv、ls、diff、cat、ln;   
  90.   
  91. ◆ 系统管理相关命令:df、top、free、quota、at、lp、adduser、groupadd、kill、crontab;   
  92.   
  93. ◆ 网络操作命令:ifconfig、ip、ping、netstat、telnet、ftp、route、rlogin、rcp、finger、mail、 nslookup;   
  94.   
  95. ◆ 系统安全相关命令:passwd、su、umask、chgrp、chmod、chown、chattr、sudo ps、who;   
  96.   
  97. ◆ 其它命令:tar、unzip、gunzip、unarj、mtools、man、unendcode、uudecode。   
  98.   
  99. 本文以Mandrake Linux 9.1(Kenrel 2.4.21)为例,介绍Linux下的安装和登录命令。   
  100.   
  101. login   
  102.   
  103. 1.作用   
  104.   
  105. login的作用是登录系统,它的使用权限是所有用户。   
  106.   
  107. 2.格式   
  108.   
  109. login [name][-p ][-h 主机名称]  
  110.   
  111. 3.主要参数   
  112.   
  113. -p:通知login保持现在的环境参数。   
  114.   
  115. -h:用来向远程登录的之间传输用户名。   
  116.   
  117. 如果选择用命令行模式登录Linux的话,那么看到的第一个Linux命令就是login:。   
  118.   
  119. 一般界面是这样的:   
  120.   
  121. Manddrake Linux release 9.1(Bamboo) for i586   
  122. renrel 2.4.21-0.13mdk on i686 / tty1  
  123. localhost login:root  
  124. password:  
  125.   
  126. 上面代码中,第一行是Linux发行版本号,第二行是内核版本号和登录的虚拟控制台,我们在第三行输入登录名,按“Enter”键在Password后输入账户密码,即可登录系统。出于安全考虑,输入账户密码时字符不会在屏幕上回显,光标也不移动。   
  127.   
  128. 登录后会看到下面这个界面(以超级用户为例):   
  129.   
  130. [root@localhost root]#  
  131. last login:Tue ,Nov 18 10:00:55 on vc/1  
  132.   
  133. 上面显示的是登录星期、月、日、时间和使用的虚拟控制台。   
  134.   
  135. 4.应用技巧   
  136.   
  137. Linux是一个真正的多用户操作系统,可以同时接受多个用户登录,还允许一个用户进行多次登录。这是因为Linux和许多版本的Unix一样,提供了虚拟控制台的访问方式,允许用户在同一时间从控制台(系统的控制台是与系统直接相连的监视器和键盘)进行多次登录。每个虚拟控制台可以看作是一个独立的工作站,工作台之间可以切换。虚拟控制台的切换可以通过按下Alt键和一个功能键来实现,通常使用F1-F6 。   
  138.   
  139. 例如,用户登录后,按一下“Alt+F2”键,用户就可以看到上面出现的“login:”提示符,说明用户看到了第二个虚拟控制台。然后只需按“Alt+F1”键,就可以回到第一个虚拟控制台。 一个新安装的Linux系统允许用户使用“Alt+F1”到“Alt+F6”键来访问前六个虚拟控制台。虚拟控制台最有用的是,当一个程序出错造成系统死锁时,可以切换到其它虚拟控制台工作,关闭这个程序。   
  140.   
  141. shutdown   
  142.   
  143. 1.作用   
  144.   
  145. shutdown命令的作用是关闭计算机,它的使用权限是超级用户。   
  146.   
  147. 2.格式   
  148.   
  149. shutdown [-h][-i][-k][-m][-t]  
  150.   
  151. 3.重要参数   
  152.   
  153. -t:在改变到其它运行级别之前,告诉init程序多久以后关机。   
  154.   
  155. -k:并不真正关机,只是送警告信号给每位登录者。   
  156.   
  157. -h:关机后关闭电源。   
  158.   
  159. -c:cancel current process取消目前正在执行的关机程序。所以这个选项当然没有时间参数,但是可以输入一个用来解释的讯息,而这信息将会送到每位使用者。   
  160.   
  161. -F:在重启计算机时强迫fsck。   
  162.   
  163. -time:设定关机前的时间。   
  164.   
  165. -m: 将系统改为单用户模式。   
  166.   
  167. -i:关机时显示系统信息。   
  168.   
  169. 4.命令说明   
  170.   
  171. shutdown命令可以安全地将系统关机。有些用户会使用直接断掉电源的方式来关闭Linux系统,这是十分危险的。因为Linux与Windows不同,其后台运行着许多进程,所以强制关机可能会导致进程的数据丢失,使系统处于不稳定的状态,甚至在有的系统中会损坏硬件设备(硬盘)。在系统关机前使用shutdown命令,系统管理员会通知所有登录的用户系统将要关闭,并且login指令会被冻结,即新的用户不能再登录。   
  172.   
  173. halt   
  174.   
  175. 1.作用   
  176.   
  177. halt命令的作用是关闭系统,它的使用权限是超级用户。   
  178.   
  179. 2.格式   
  180.   
  181. halt [-n] [-w] [-d] [-f] [-i] [-p]  
  182.   
  183. 3.主要参数说明   
  184.   
  185. -n:防止sync系统调用,它用在用fsck修补根分区之后,以阻止内核用老版本的超级块覆盖修补过的超级块。   
  186.   
  187. -w:并不是真正的重启或关机,只是写wtmp(/var/log/wtmp)纪录。   
  188.   
  189. -f:没有调用shutdown,而强制关机或重启。   
  190.   
  191. -i:关机(或重启)前,关掉所有的网络接口。   
  192.   
  193. -f:强迫关机,不呼叫shutdown这个指令。   
  194.   
  195. -p: 当关机的时候顺便做关闭电源的动作。   
  196.   
  197. -d:关闭系统,但不留下纪录。    
  198.   
  199. 4.命令说明   
  200.   
  201. halt就是调用shutdown -h。halt执行时,杀死应用进程,执行sync(将存于buffer中的资料强制写入硬盘中)系统调用,文件系统写操作完成后就会停止内核。若系统的运行级别为0或6,则关闭系统;否则以shutdown指令(加上-h参数)来取代。    
  202.   
  203. reboot   
  204.   
  205. 1.作用   
  206.   
  207. reboot命令的作用是重新启动计算机,它的使用权限是系统管理者。   
  208.   
  209. 2.格式   
  210.   
  211. reboot [-n] [-w] [-d] [-f] [-i]  
  212.   
  213. 3.主要参数   
  214.   
  215. -n: 在重开机前不做将记忆体资料写回硬盘的动作。   
  216.   
  217. -w: 并不会真的重开机,只是把记录写到/var/log/wtmp文件里。   
  218.   
  219. -d: 不把记录写到/var/log/wtmp文件里(-n这个参数包含了-d)。   
  220.   
  221. -i: 在重开机之前先把所有与网络相关的装置停止。   
  222.   
  223. install   
  224.   
  225. 1.作用   
  226.   
  227. install命令的作用是安装或升级软件或备份数据,它的使用权限是所有用户。   
  228.   
  229. 2.格式   
  230.   
  231. (1)install [选项]... 来源 目的地   
  232.   
  233. (2)install [选项]... 来源... 目录   
  234.   
  235. (3)install -d [选项]... 目录...   
  236.   
  237. 在前两种格式中,会将<来源>复制至<目的地>或将多个<来源>文件复制至已存在的<目录>,同时设定权限模式及所有者/所属组。在第三种格式中,会创建所有指定的目录及它们的主目录。长选项必须用的参数在使用短选项时也是必须的。   
  238.   
  239. 3.主要参数   
  240.   
  241. --backup[=CONTROL]:为每个已存在的目的地文件进行备份。   
  242.   
  243. -b:类似 --backup,但不接受任何参数。   
  244.   
  245. -c:(此选项不作处理)。   
  246.   
  247. -d,--directory:所有参数都作为目录处理,而且会创建指定目录的所有主目录。   
  248.   
  249. -D:创建<目的地>前的所有主目录,然后将<来源>复制至 <目的地>;在第一种使用格式中有用。   
  250.   
  251. -g,--group=组:自行设定所属组,而不是进程目前的所属组。   
  252.   
  253. -m,--mode=模式:自行设定权限模式 (像chmod),而不是rwxr-xr-x。   
  254.   
  255. -o,--owner=所有者:自行设定所有者 (只适用于超级用户)。   
  256.   
  257. -p,--preserve-timestamps:以<来源>文件的访问/修改时间作为相应的目的地文件的时间属性。   
  258.   
  259. -s,--strip:用strip命令删除symbol table,只适用于第一及第二种使用格式。   
  260.   
  261. -S,--suffix=后缀:自行指定备份文件的<后缀>。   
  262.   
  263. -v,--verbose:处理每个文件/目录时印出名称。   
  264.   
  265. --help:显示此帮助信息并离开。   
  266.   
  267. --version:显示版本信息并离开。   
  268.   
  269. mount   
  270.   
  271. 1.作用   
  272.   
  273. mount命令的作用是加载文件系统,它的用权限是超级用户或/etc/fstab中允许的使用者。   
  274.   
  275. 2.格式   
  276.   
  277. mount -a [-fv] [-t vfstype] [-n] [-rw] [-F] device dir  
  278.   
  279. 3.主要参数   
  280.   
  281. -h:显示辅助信息。   
  282.   
  283. -v:显示信息,通常和-f用来除错。   
  284.   
  285. -a:将/etc/fstab中定义的所有文件系统挂上。   
  286.   
  287. -F:这个命令通常和-a一起使用,它会为每一个mount的动作产生一个行程负责执行。在系统需要挂上大量NFS文件系统时可以加快加载的速度。   
  288.   
  289. -f:通常用于除错。它会使mount不执行实际挂上的动作,而是模拟整个挂上的过程,通常会和-v一起使用。   
  290.   
  291. -t vfstype:显示被加载文件系统的类型。   
  292.   
  293. -n:一般而言,mount挂上后会在/etc/mtab中写入一笔资料,在系统中没有可写入文件系统的情况下,可以用这个选项取消这个动作。   
  294.   
  295. 4.应用技巧   
  296.   
  297. 在Linux和Unix系统上,所有文件都是作为一个大型树(以/为根)的一部分访问的。要访问CD-ROM上的文件,需要将CD-ROM设备挂装在文件树中的某个挂装点。如果发行版安装了自动挂装包,那么这个步骤可自动进行。在Linux中,如果要使用硬盘、光驱等储存设备 ,就得先将它加载,当储存设备挂上了之后,就可以把它当成一个目录来访问。挂上一个设备使用mount命令。 在使用mount这个指令时,至少要先知道下列三种信息:要加载对象的文件系统类型、要加载对象的设备名称及要将设备加载到哪个目录下。   
  298.   
  299. (1)Linux可以识别的文件系统   
  300.   
  301. ◆ Windows 95/98常用的FAT 32文件系统:vfat ;   
  302.   
  303. ◆ Win NT/2000 的文件系统:ntfs ;   
  304.   
  305. ◆ OS/2用的文件系统:hpfs;   
  306.   
  307. ◆ Linux用的文件系统:ext2、ext3;   
  308.   
  309. ◆ CD-ROM光盘用的文件系统:iso9660。   
  310.   
  311. 虽然vfat是指FAT 32系统,但事实上它也兼容FAT 16的文件系统类型。   
  312.   
  313. (2)确定设备的名称   
  314.   
  315. 在Linux中,设备名称通常都存在/dev里。这些设备名称的命名都是有规则的,可以用“推理”的方式把设备名称找出来。例如,/dev/hda1这个IDE设备,hd是Hard Disk(硬盘)的,sd是SCSI Device,fd是Floppy Device(或是Floppy Disk?)。a代表第一个设备,通常IDE接口可以接上4个IDE设备(比如4块硬盘)。所以要识别IDE硬盘的方法分别就是hda、hdb、hdc、hdd。hda1中的“1”代表hda的第一个硬盘分区 (partition),hda2代表hda的第二主分区,第一个逻辑分区从hda5开始,依此类推。 此外,可以直接检查/var/log/messages文件,在该文件中可以找到计算机开机后系统已辨认出来的设备代号。   
  316.   
  317. (3)查找挂接点   
  318.   
  319. 在决定将设备挂接之前,先要查看一下计算机是不是有个/mnt的空目录,该目录就是专门用来当作挂载点(Mount Point)的目录。建议在/mnt里建几个/mnt/cdrom、/mnt/floppy、/mnt/mo等目录,当作目录的专用挂载点。举例而言,如要挂载下列5个设备,其执行指令可能如下 (假设都是Linux的ext2系统,如果是Windows XX请将ext2改成vfat):   
  320.   
  321. 软盘 ===>mount -t ext2 /dev/fd0 /mnt/floppy   
  322. cdrom ===>mount -t iso9660 /dev/hdc /mnt/cdrom   
  323. SCSI cdrom ===>mount -t iso9660 /dev/sdb /mnt/scdrom   
  324. SCSI cdr ===>mount -t iso9660 /dev/sdc /mnt/scdr  
  325.   
  326. 不过目前大多数较新的Linux发行版本(包括红旗 Linux、中软Linux、Mandrake Linux等)都可以自动挂装文件系统,但Red Hat Linux除外。   
  327.   
  328. umount   
  329.   
  330. 1.作用   
  331.   
  332. umount命令的作用是卸载一个文件系统,它的使用权限是超级用户或/etc/fstab中允许的使用者。   
  333.   
  334. 2.格式   
  335.   
  336. unmount -a [-fFnrsvw] [-t vfstype] [-n] [-rw] [-F] device dir  
  337.   
  338. 3.使用说明   
  339.   
  340. umount命令是mount命令的逆操作,它的参数和使用方法和mount命令是一样的。Linux挂装CD-ROM后,会锁定CD—ROM,这样就不能用CD-ROM面板上的Eject按钮弹出它。但是,当不再需要光盘时,如果已将/cdrom作为符号链接,请使用umount/cdrom来卸装它。仅当无用户正在使用光盘时,该命令才会成功。该命令包括了将带有当前工作目录当作该光盘中的目录的终端窗口。   
  341.   
  342. chsh   
  343.   
  344. 1.作用   
  345.   
  346. chsh命令的作用是更改使用者shell设定,它的使用权限是所有使用者。   
  347.   
  348. 2.格式   
  349.   
  350. chsh [ -s ] [ -list] [ --help ] [ -v ] [ username ]  
  351.   
  352. 3.主要参数   
  353.   
  354. -l:显示系统所有Shell类型。   
  355.   
  356. -v:显示Shell版本号。   
  357.   
  358. 4.应用技巧   
  359.   
  360. 前面介绍了Linux下有多种Shell,一般缺省的是Bash,如果想更换Shell类型可以使用chsh命令。先输入账户密码,然后输入新Shell类型,如果操作正确系统会显示“Shell change”。其界面一般如下:   
  361.   
  362. Changing fihanging shell for cao  
  363. Password:   
  364. New shell [/bin/bash]: /bin/tcsh  
  365.   
  366. 上面代码中,[ ]内是目前使用的Shell。普通用户只能修改自己的Shell,超级用户可以修改全体用户的Shell。要想查询系统提供哪些Shell,可以使用chsh -l 命令,见图1所示。   
  367.   
  368.   
  369. 图1 系统可以使用的Shell类型   
  370.   
  371.   
  372. 从图1中可以看到,笔者系统中可以使用的Shell有bash(缺省)、csh、sh、tcsh四种。   
  373.   
  374. exit   
  375.   
  376. 1.作用   
  377.   
  378. exit命令的作用是退出系统,它的使用权限是所有用户。   
  379.   
  380. 2.格式   
  381.   
  382. exit   
  383.   
  384. 3.参数   
  385.   
  386. exit命令没有参数,运行后退出系统进入登录界面。   
  387.   
  388. last   
  389.   
  390. 1.作用   
  391.   
  392. last命令的作用是显示近期用户或终端的登录情况,它的使用权限是所有用户。通过last命令查看该程序的log,管理员可以获知谁曾经或企图连接系统。   
  393.   
  394. 2.格式   
  395.   
  396. 1ast[—n][-f file][-t tty] [—h 节点][-I —IP][—1][-y][1D]  
  397.   
  398. 3.主要参数   
  399.   
  400. -n:指定输出记录的条数。   
  401.   
  402. -f file:指定用文件file作为查询用的log文件。   
  403.   
  404. -t tty:只显示指定的虚拟控制台上登录情况。   
  405.   
  406. -h 节点:只显示指定的节点上的登录情况。   
  407.   
  408. -i IP:只显示指定的IP上登录的情况。   
  409.   
  410. -1:用IP来显示远端地址。   
  411.   
  412. -y:显示记录的年、月、日。   
  413.   
  414. -ID:知道查询的用户名。   
  415.   
  416. -x:显示系统关闭、用户登录和退出的历史。   
  417.   
  418. 动手练习   
  419.   
  420. 上面介绍了Linux安装和登录命令,下面介绍几个实例,动手练习一下刚才讲过的命令。   
  421.   
  422. 1.一次运行多个命令   
  423.   
  424. 在一个命令行中可以执行多个命令,用分号将各个命令隔开即可,例如:   
  425.   
  426. #last -x;halt  
  427.   
  428. 上面代码表示在显示系统关闭、用户登录和退出的历史后关闭计算机。   
  429.   
  430. 2.利用mount挂装文件系统访问Windows系统   
  431.   
  432. 许多Linux发行版本现在都可以自动加载Vfat分区来访问Windows系统,而Red Hat各个版本都没有自动加载Vfat分区,因此还需要进行手工操作。   
  433.   
  434. mount可以将Windows分区作为Linux的一个“文件”挂接到Linux的一个空文件夹下,从而将Windows的分区和/mnt这个目录联系起来。因此,只要访问这个文件夹就相当于访问该分区了。首先要在/mnt下建立winc文件夹,在命令提示符下输入下面命令:   
  435.   
  436. #mount -t vfat /dev/hda1 /mnt/winc  
  437.   
  438. 即表示将Windows的C分区挂到Liunx的/mnt/winc目录下。这时,在/mnt/winc目录下就可以看到Windows中C盘的内容了。使用类似的方法可以访问Windows系统的D、E盘。在Linux系统显示Windows的分区一般顺序这样的:hda1为C盘、hda5为D盘、hda6为E盘……以此类推。上述方法可以查看Windows系统有一个很大的问题,就是Windows中的所有中文文件名或文件夹名全部显示为问号“?”,而英文却可以正常显示。我们可以通过加入一些参数让它显示中文。还以上面的操作为例,此时输入命令:   
  439.   
  440. #mount -t vfat -o iocharset=cp936 /dev/hda1 /mnt/winc  
  441.   
  442. 现在它就可以正常显示中文了。   
  443.   
  444. 3.使用mount加挂闪盘上的文件系统   
  445.   
  446. 在Linux下使用闪盘非常简单。Linux对USB设备有很好的支持,当插入闪盘后,闪盘被识别为一个SCSI盘,通常输入以下命令:   
  447.   
  448. # mount /dev/sda1 /usb  
  449.   
  450. 就能够加挂闪盘上的文件系统。   
  451.   
  452. 小知识   
  453.   
  454. Linux命令与Shell   
  455.   
  456. 所谓Shell,就是命令解释程序,它提供了程序设计接口,可以使用程序来编程。学习Shell对于Linux初学者理解Linux系统是非常重要的。Linux系统的Shell作为操作系统的外壳,为用户提供了使用操作系统的接口。Shell是命令语言、命令解释程序及程序设计语言的统称,是用户和Linux内核之间的接口程序。如果把Linux内核想象成一个球体的中心,Shell就是围绕内核的外层。当从Shell或其它程序向Linux传递命令时,内核会做出相应的反应。Shell在Linux系统的作用和MS DOS下的COMMAND.COM和Windows 95/98 的 explorer.exe相似。Shell虽然不是系统核心的一部分,只是系统核心的一个外延,但它能够调用系统内核的大部分功能。因此,可以说Shell是Unux/Linux最重要的实用程序。   
  457.   
  458. Linux中的Shell有多种类型,其中最常用的是Bourne Shell(sh)、C Shell(csh)和Korn Shell(ksh)。大多数Linux发行版本缺省的Shell是Bourne Again Shell,它是Bourne Shell的扩展,简称bash,与Bourne Shell完全向后兼容,并且在Bourne Shell的基础上增加了很多特性。bash放在/bin/bash中,可以提供如命令补全、命令编辑和命令历史表等功能。它还包含了很多C Shell和Korn Shell中的优点,有灵活和强大的编程接口,同时又有很友好的用户界面。Linux系统中200多个命令中有40个是bash的内部命令,主要包括exit、less、lp、kill、 cd、pwd、fc、fg等  

显示Linux系统信息

arch 显示机器的处理器架构(1)

uname -m 显示机器的处理器架构(2)

uname -r 显示正在使用的内核版本

dmidecode -q 显示硬件系统部件 – (SMBIOS / DMI)

hdparm -i /dev/hda 罗列一个磁盘的架构特性

hdparm -tT /dev/sda 在磁盘上执行测试性读取操作

cat /proc/cpuinfo 显示CPU info的信息

cat /proc/interrupts 显示中断

cat /proc/meminfo 校验内存使用

cat /proc/swaps 显示哪些swap被使用

cat /proc/version 显示内核的版本

cat /proc/net/dev 显示网络适配器及统计

cat /proc/mounts 显示已加载的文件系统

lspci -tv 罗列 PCI 设备

lsusb -tv 显示 USB 设备

date 显示系统日期

cal 2007 显示2007年的日历表

date 041217002007.00 设置日期和时间 – 月日时分年.秒

clock -w 将时间修改保存到 BIOS

ls          显示文件或目录

linux 常用命令大全

$:普通用户登录后系统的提示符

3.常用VI命令大全

[java] view plain copy

 

  1. 进入vi的命令   
  2. vi filename :打开或新建文件,并将光标置于第一行首   
  3. vi +n filename :打开文件,并将光标置于第n行首   
  4. vi + filename :打开文件,并将光标置于最后一行首   
  5. vi +/pattern filename:打开文件,并将光标置于第一个与pattern匹配的串处   
  6. vi -r filename :在上次正用vi编辑时发生系统崩溃,恢复filename   
  7. vi filename....filename :打开多个文件,依次进行编辑   
  8.   
  9. 移动光标类命令  
  10. h :光标左移一个字符   
  11. l :光标右移一个字符   
  12. space:光标右移一个字符   
  13. Backspace:光标左移一个字符   
  14. k或Ctrl+p:光标上移一行   
  15. j或Ctrl+n :光标下移一行   
  16. Enter :光标下移一行   
  17. w或W :光标右移一个字至字首   
  18. b或B :光标左移一个字至字首   
  19. e或E :光标右移一个字至字尾   
  20. ) :光标移至句尾   
  21. ( :光标移至句首   
  22. }:光标移至段落开头   
  23. {:光标移至段落结尾   
  24. nG:光标移至第n行首   
  25. n+:光标下移n行   
  26. n-:光标上移n行   
  27. n$:光标移至第n行尾   
  28. H :光标移至屏幕顶行   
  29. M :光标移至屏幕中间行   
  30. L :光标移至屏幕最后行   
  31. 0:(注意是数字零)光标移至当前行首   
  32. $:光标移至当前行尾   
  33.   
  34. 屏幕翻滚类命令   
  35. Ctrl+u:向文件首翻半屏   
  36. Ctrl+d:向文件尾翻半屏   
  37. Ctrl+f:向文件尾翻一屏   
  38. Ctrl+b;向文件首翻一屏   
  39. nz:将第n行滚至屏幕顶部,不指定n时将当前行滚至屏幕顶部。   
  40.   
  41. 插入文本类命令   
  42. i :在光标前   
  43. I :在当前行首   
  44. a:光标后   
  45. A:在当前行尾   
  46. o:在当前行之下新开一行   
  47. O:在当前行之上新开一行   
  48. r:替换当前字符   
  49. R:替换当前字符及其后的字符,直至按ESC键   
  50. s:从当前光标位置处开始,以输入的文本替代指定数目的字符   
  51. S:删除指定数目的行,并以所输入文本代替之   
  52. ncw或nCW:修改指定数目的字   
  53. nCC:修改指定数目的行   
  54.   
  55. 删除命令   
  56. ndw或ndW:删除光标处开始及其后的n-1个字   
  57. do:删至行首   
  58. d$:删至行尾   
  59. ndd:删除当前行及其后n-1行   
  60. x或X:删除一个字符,x删除光标后的,而X删除光标前的   
  61. Ctrl+u:删除输入方式下所输入的文本   
  62.   
  63. 搜索及替换命令   
  64. /pattern:从光标开始处向文件尾搜索pattern   
  65. ?pattern:从光标开始处向文件首搜索pattern   
  66. n:在同一方向重复上一次搜索命令   
  67. N:在反方向上重复上一次搜索命令   
  68. :s/p1/p2/g:将当前行中所有p1均用p2替代   
  69. :n1,n2s/p1/p2/g:将第n1至n2行中所有p1均用p2替代   
  70. :g/p1/s//p2/g:将文件中所有p1均用p2替换   
  71.   
  72. 选项设置   
  73. all:列出所有选项设置情况   
  74. term:设置终端类型   
  75. ignorance:在搜索中忽略大小写   
  76. list:显示制表位(Ctrl+I)和行尾标志($)   
  77. number:显示行号   
  78. report:显示由面向行的命令修改过的数目   
  79. terse:显示简短的警告信息   
  80. warn:在转到别的文件时若没保存当前文件则显示NO write信息   
  81. nomagic:允许在搜索模式中,使用前面不带“”的特殊字符   
  82. nowrapscan:禁止vi在搜索到达文件两端时,又从另一端开始   
  83. mesg:允许vi显示其他用户用write写到自己终端上的信息   
  84.   
  85. 最后行方式命令   
  86. :n1,n2 co n3:将n1行到n2行之间的内容拷贝到第n3行下   
  87. :n1,n2 m n3:将n1行到n2行之间的内容移至到第n3行下   
  88. :n1,n2 d :将n1行到n2行之间的内容删除   
  89. :w :保存当前文件   
  90. :e filename:打开文件filename进行编辑   
  91. :x:保存当前文件并退出   
  92. :q:退出vi   
  93. :q!:不保存文件并退出vi   
  94. :!command:执行shell命令command   
  95. :n1,n2 w!command:将文件中n1行至n2行的内容作为command的输入并执行之,若不指定n1,n2,则表示将整个文件内容作为command的输入   
  96. :r!command:将命令command的输出结果放到当前行   
  97.   
  98. 寄存器操作   
  99. "?nyy:将当前行及其下n行的内容保存到寄存器?中,其中?为一个字母,n为一个数字   
  100. "?nyw:将当前行及其下n个字保存到寄存器?中,其中?为一个字母,n为一个数字   
  101. "?nyl:将当前行及其下n个字符保存到寄存器?中,其中?为一个字母,n为一个数字   
  102. "?p:取出寄存器?中的内容并将其放到光标位置处。这里?可以是一个字母,也可以是一个数字   
  103. ndd:将当前行及其下共n行文本删除,并将所删内容放到1号删除寄存器中。  
  104.   
  105. VI的使用  
  106. --------------------------------------------------------------------------------  
  107.   
  108. 一、插入文本   
  109. ┌──┬────────────┐   
  110. │命令│描述          │   
  111. ├──┼────────────┤   
  112. │i  │在当前字符前插入文本  │   
  113. ├──┼────────────┤   
  114. │I  │在行首插入文本      │   
  115. ├──┼────────────┤   
  116. │a  │在当前字符后添加文本  │   
  117. ├──┼────────────┤   
  118. │A  │在行末添加文本     │   
  119. ├──┼────────────┤   
  120. │o  │在当前行后面插入一空行 │   
  121. ├──┼────────────┤   
  122. │O  │在当前行前面插入一空行 │   
  123. ├──┼────────────┤   
  124. │R  │以改写方式输入文本   │   
  125. └──┴────────────┘   
  126. 二、移动光标   
  127. ┌─────┬───────────┐   
  128. │命令   │描述         │   
  129. ├─────┼───────────┤   
  130. │j或下箭头 │向下移动一行     │   
  131. ├─────┼───────────┤   
  132. │k或上箭头 │向上移动一行     │   
  133. ├─────┼───────────┤   
  134. │h或左箭头 │左移一个字符     │   
  135. ├─────┼───────────┤   
  136. │l或右箭头 │右移一个字符     │   
  137. ├─────┼───────────┤   
  138. │w     │右移一个词      │   
  139. ├─────┼───────────┤   
  140. │W     │右移一个以空格分隔的词│   
  141. ├─────┼───────────┤   
  142. │b     │左移一个词      │   
  143. ├─────┼───────────┤   
  144. │B     │左移一个以空格分隔的词│   
  145. ├─────┼───────────┤   
  146. │0     │移到行首       │   
  147. │Ctrl-F  │向前翻页       │   
  148. ├─────┼───────────┤   
  149. │Ctrl-B  │向后翻页       │   
  150. ├─────┼───────────┤   
  151. │nG    │到第n行        │   
  152. ├─────┼───────────┤   
  153. │G     │到最后一行      │   
  154. └─────┴───────────┘   
  155. 三、替换文本   
  156. ┌─────┬──────┐   
  157. │命令   │描述    │   
  158. ├─────┼──────┤   
  159. │$     │到行尾   │   
  160. ├─────┼──────┤   
  161. │(     │到句子的开头│   
  162. ├─────┼──────┤   
  163. │)     │到句子的末尾│   
  164. ├─────┼──────┤   
  165. │{     │到段落的开头│   
  166. ├─────┼──────┤   
  167. │}     │到段落的末尾│   
  168. └─────┴──────┘   
  169.   
  170. 四、删除文本   
  171. ┌───┬───────────┐   
  172. │命令 │描述          │   
  173. ├───┼───────────┤   
  174. │r   │替换一个字符      │   
  175. ├───┼───────────┤   
  176. │c   │修改文本直到按下Esc健 │   
  177. ├───┼───────────┤   
  178. │cw  │修改下一个词      │   
  179. ├───┼───────────┤   
  180. │cnw  │修改接下来的n个词   │   
  181. └───┴───────────┘   
  182. 五、文本编辑   
  183. ┌──┬──────────────────────┐   
  184. │命寺│描述                    │   
  185. ├──┼──────────────────────┤   
  186. │yy │将一行文本移到缺省缓冲区中          │   
  187. ├──┼──────────────────────┤   
  188. │yn │将下一个词移到缺省缓冲区中          │   
  189. ├──┼──────────────────────┤   
  190. │ynw │将后面的n个词移到缺省缓冲区中        │   
  191. ├──┼──────────────────────┤   
  192. │p  │如果缺省缓冲区中包含一行文本,则在当前   │   
  193. │  │行后面插入一个空行井将缺省缓冲区中的声   │   
  194. │  │容粘贴到这一行中;如果缺省缓冲区中包含   │   
  195. │  │多个词,把这些词粘贴到光标的右边.     │   
  196. ├──┼──────────────────────┤   
  197. │P  │如果缺省缓冲区中包含一行文本,则正当前    │   
  198. │   │行前面插入一个空行井将缺省缓冲区中的内    │   
  199. │  │容粘贴到这一行中;如果缺省缓冲区中包含    │   
  200. │   │多个词,把这些词粘贴到光标的左边      
  201.   
  202.   │   
  203. └──┴──────────────────────┘   
  204. 六、保存退出   
  205. ┌───────────┬───────────────┐   
  206. │命令         │描述             │   
  207. ├───────────┼───────────────┤   
  208. │zz          │保存并退出          │   
  209. ├───────────┼───────────────┤   
  210. │:w filename      │写入文件            │   
  211. ├───────────┼───────────────┤   
  212. │:W          │写入文件           │   
  213. ├───────────┼───────────────┤   
  214. │:x          │保存(如果当前文件修改过)并退出│   
  215. ├───────────┼───────────────┤   
  216. │:q!          │不保存文件,直接退出      │   
  217. ├───────────┼───────────────┤   
  218. │:q          │退出vi            │   
  219.   
  220. VI常用技巧  
  221.   
  222. VI命令可以说是Unix/Linux世界里最常用的编辑文件的命令了,但是因为它的命令集众多,很多人都不习惯使用它,其实您只需要掌握基本命令,然后加以灵活运用,就会发现它的优势,并会逐渐喜欢使用这种方法。本文旨在介绍VI的一些最常用命令和高级应用技巧。   
  223.   
  224. 一、基本命令介绍   
  225.   
  226. ---- 1.光标命令   
  227.   
  228. k、j、h、l——上、下、左、右光标移动命令。虽然您可以在Linux中使用键盘右边的4个光标键,但是记住这4个命令还是非常有用的。这4个键正是右手在键盘上放置的基本位置。   
  229. nG——跳转命令。n为行数,该命令立即使光标跳到指定行。   
  230. Ctrl+G——光标所在位置的行数和列数报告。   
  231. w、b——使光标向前或向后跳过一个单词。   
  232. ---- 2.编辑命令   
  233. i、a、r——在光标的前、后以及所在处插入字符命令(i=insert、a=append、r=replace)。   
  234. cw、dw——改变(置换)/删除光标所在处的单词的命令 (c=change、d=delete)。   
  235. x、d$、dd——删除一个字符、删除光标所在处到行尾的所有字符以及删除整行的命令。   
  236. ---- 3.查找命令   
  237. ---- /string、?string——从光标所在处向后或向前查找相应的字符串的命令。   
  238. ---- 4.拷贝复制命令   
  239. ---- yy、p——拷贝一行到剪贴板或取出剪贴板中内容的命令。   
  240.   
  241. 二、常见问题及应用技巧   
  242.   
  243. ---- 1.在一个新文件中读/etc/passwd中的内容,取出用户名部分。   
  244. ---- vi file   
  245. ---- :r /etc/passwd 在打开的文件file中光标所在处读入/etc/passwd   
  246. ---- :%s/:.*//g 删除/etc/passwd中用户名后面的从冒号开始直到行尾的所有部分。   
  247. ---- 您也可以在指定的行号后读入文件内容,例如使用命令“:3r /etc/passwd”从新文件的第3行开始读入 /etc/passwd的所有内容。   
  248. ---- 我们还可以使用以下方法删掉文件中所有的空行及以#开始的注释行。   
  249. ---- #cat squid.conf.default | grep -v ^$ | grep -v ^#   
  250.   
  251. ---- 2.在打开一个文件编辑后才知道登录的用户对该文件没有写的权限,不能存盘,需要将所做修改存入临时文件。   
  252. ---- vi file   
  253. ---- :w /tmp/1 保存所做的所有修改,也可以将其中的某一部分修改保存到临时文件,例如仅仅把第20~59行之间的内容存盘成文件/tmp/1,我们可以键入如下命令。   
  254. ---- vi file   
  255. ---- :20,59w /tmp/1   
  256.   
  257. ---- 3.用VI编辑一个文件,但需要删除大段的内容。   
  258. ---- 首先利用编辑命令“vi file”打开文件,然后将光标移到需要删除的行处按Ctrl+G显示行号,再到结尾处再按Ctrl+G,显示文件结尾的行号。   
  259. ---- :23,1045d 假定2次得到的行号为23和1045,则把这期间的内容全删除,也可以在要删除的开始行和结束行中用ma、mb命令标记,然后利用“:a,bd”命令删除。   
  260.   
  261. ---- 4.在整个文件的各行或某几行的行首或行尾加一些字符串。   
  262. ---- vi file   
  263. ---- :3,$s/^/some string / 在文件的第一行至最后一行的行首插入“some string”。   
  264. ---- :%s/$/some string/g 在整个文件每一行的行尾添加“some string”。   
  265. ---- :%s/string1/string2/g 在整个文件中替换“string1”成“string2”。   
  266. ---- :3,7s/string1/string2/ 仅替换文件中的第3行到第7行中的“string1”成“string2”。   
  267. ---- 注意: 其中s为substitute,%表示所有行,g表示global。   
  268.   
  269. ---- 5.同时编辑2个文件,拷贝一个文件中的文本并粘贴到另一个文件中。   
  270. ---- vi file1 file2   
  271. ---- yy 在文件1的光标处拷贝所在行   
  272. ---- :n 切换到文件2 (n=next)   
  273. ---- p 在文件2的光标所在处粘贴所拷贝的行   
  274. ---- :n 切换回文件1   
  275.   
  276. ---- 6.替换文件中的路径。   
  277. ---- 使用命令“:%s#/usr/bin#/bin#g”可以把文件中所有路径/usr/bin换成/bin。也可以使用命令“:%s//usr/bin//bin/g”实现,其中“”是转义字符,表明其后的“/”字符是具有实际意义的字符,不是分隔符。  

Linux关机 (系统的关机、重启以及登出 )

shutdown -h now 关闭系统(1)

init 0 关闭系统(2)

telinit 0 关闭系统(3)

shutdown -h hours:minutes 按预定时间关闭系统

shutdown -c 取消按预定时间关闭系统

shutdown -r now 重启(1)

reboot 重启(2)

logout 注销

     -l           列出文件详细信息l(list)

前两天分别和大家分享了怎么学习Linux和Linux的基本操作,今天我们一起来看一下Linux的基本命令吧!

#:root用户登录后系统的提示符

文件和目录操作

cd /home 进入 ‘/ home’ 目录’

cd .. 返回上一级目录

cd ../.. 返回上两级目录

cd 进入个人的主目录

cd ~user1 进入个人的主目录

cd – 返回上次所在的目录

pwd 显示工作路径

ls 查看目录中的文件

ls -F 查看目录中的文件

ls -l 显示文件和目录的详细资料

ls -a 显示隐藏文件

ls *[0-9]* 显示包含数字的文件名和目录名

tree 显示文件和目录由根目录开始的树形结构(1)

lstree 显示文件和目录由根目录开始的树形结构(2)

mkdir dir1 创建一个叫做 ‘dir1′ 的目录’

mkdir dir1 dir2 同时创建两个目录

mkdir -p /tmp/dir1/dir2 创建一个目录树

rm -f file1 删除一个叫做 ‘file1′ 的文件’

rmdir dir1 删除一个叫做 ‘dir1′ 的目录’

rm -rf dir1 删除一个叫做 ‘dir1′ 的目录并同时删除其内容

rm -rf dir1 dir2 同时删除两个目录及它们的内容

mv dir1 new_dir 重命名/移动 一个目录

cp file1 file2 复制一个文件

cp dir/* . 复制一个目录下的所有文件到当前工作目录

cp -a /tmp/dir1 . 复制一个目录到当前工作目录

cp -a dir1 dir2 复制一个目录

ln -s file1 lnk1 创建一个指向文件或目录的软链接

ln file1 lnk1 创建一个指向文件或目录的物理链接

touch -t 0712250000 file1 修改一个文件或目录的时间戳 – (YYMMDDhhmm)

file file1 outputs the mime type of the file as text

iconv -l 列出已知的编码

iconv -f fromEncoding -t toEncoding inputFile > outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding.

find . -maxdepth 1 -name *.jpg -print -exec convert “{}” -resize 80×60 “thumbs/{}” ; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)

     -a          列出当前目录下所有文件及目录,包括隐藏的a(all)

图片 1

 

文件搜索

find / -name file1 从 ‘/’ 开始进入根文件系统搜索文件和目录

find / -user user1 搜索属于用户 ‘user1′ 的文件和目录

find /home/user1 -name *.bin 在目录 ‘/ home/user1′ 中搜索带有’.bin’ 结尾的文件

find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件

find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件

find / -name *.rpm -exec chmod 755 ‘{}’ ; 搜索以 ‘.rpm’ 结尾的文件并定义其权限

find / -xdev -name *.rpm 搜索以 ‘.rpm’ 结尾的文件,忽略光驱、捷盘等可移动设备

locate *.ps 寻找以 ‘.ps’ 结尾的文件 – 先运行 ‘updatedb’ 命令

whereis halt 显示一个二进制文件、源码或man的位置

which halt 显示一个二进制文件或可执行文件的完整路径

mkdir         创建目录

系统信息
arch 显示机器的处理器架构(1)
uname -m 显示机器的处理器架构(2)
uname -r 显示正在使用的内核版本
dmidecode -q 显示硬件系统部件 - (SMBIOS / DMI)
hdparm -i /dev/hda 罗列一个磁盘的架构特性
hdparm -tT /dev/sda 在磁盘上执行测试性读取操作
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/interrupts 显示中断
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
lspci -tv 罗列 PCI 设备
lsusb -tv 显示 USB 设备
date 显示系统日期
cal 2007 显示2007年的日历表
date 041217002007.00 设置日期和时间 - 月日时分年.秒
clock -w 将时间修改保存到 BIOS

Linux命令

Linux挂载文件系统

mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 – 确定目录 ‘/ mnt/hda2′ 已经存在

umount /dev/hda2 卸载一个叫做hda2的盘 – 先从挂载点 ‘/ mnt/hda2′ 退出

fuser -km /mnt/hda2 当设备繁忙时强制卸载

umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用

mount /dev/fd0 /mnt/floppy 挂载一个软盘

mount /dev/cdrom /mnt/cdrom 挂载一个cdrom或dvdrom

mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom

mount /dev/hdb /mnt/cdrecorder 挂载一个cdrw或dvdrom

mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件

mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统

mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备

mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享

     -p           创建目录,若无父目录,则创建p(parent)

关机 (系统的关机、重启以及登出 )
shutdown -h now 关闭系统(1)
init 0 关闭系统(2)
telinit 0 关闭系统(3)
shutdown -h hours:minutes & 按预定时间关闭系统
shutdown -c 取消按预定时间关闭系统
shutdown -r now 重启(1)
reboot 重启(2)
logout 注销

exit  用于退出目前的shell

Linux磁盘空间管理

df -h 显示已经挂载的分区列表

ls -lSr |more 以尺寸大小排列文件和目录

du -sh dir1 估算目录 ‘dir1′ 已经使用的磁盘空间’

du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小

rpm -q -a –qf ‘%10{SIZE}t%{NAME}n’ | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)

dpkg-query -W -f=’${Installed-Size;10}t${Package}n’ | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)

cd               切换目录

文件和目录
cd /home 进入 ‘/ home‘ 目录‘
cd .. 返回上一级目录
cd ../.. 返回上两级目录
cd 进入个人的主目录
cd ~user1 进入个人的主目录
cd - 返回上次所在的目录
pwd 显示工作路径
ls 查看目录中的文件
ls -F 查看目录中的文件
ls -l 显示文件和目录的详细资料
ls -a 显示隐藏文件
ls *[0-9]* 显示包含数字的文件名和目录名
tree 显示文件和目录由根目录开始的树形结构(1)
lstree 显示文件和目录由根目录开始的树形结构(2)
mkdir dir1 创建一个叫做 ‘dir1‘ 的目录‘
mkdir dir1 dir2 同时创建两个目录
mkdir -p /tmp/dir1/dir2 创建一个目录树
rm -f file1 删除一个叫做 ‘file1‘ 的文件‘
rmdir dir1 删除一个叫做 ‘dir1‘ 的目录‘
rm -rf dir1 删除一个叫做 ‘dir1‘ 的目录并同时删除其内容
rm -rf dir1 dir2 同时删除两个目录及它们的内容
mv dir1 new_dir 重命名/移动 一个目录
cp file1 file2 复制一个文件
cp dir/* . 复制一个目录下的所有文件到当前工作目录
cp -a /tmp/dir1 . 复制一个目录到当前工作目录
cp -a dir1 dir2 复制一个目录
ln -s file1 lnk1 创建一个指向文件或目录的软链接
ln file1 lnk1 创建一个指向文件或目录的物理链接
touch -t 0712250000 file1 修改一个文件或目录的时间戳 - (YYMMDDhhmm)
file file1 outputs the mime type of the file as text
iconv -l 列出已知的编码
iconv -f fromEncoding -t toEncoding inputFile > outputFile creates a new from the given input file by assuming it is encoded in fromEncoding and converting it to toEncoding.
find . -maxdepth 1 -name *.jpg -print -exec convert "{}" -resize 80x60 "thumbs/{}" ; batch resize files in the current directory and send them to a thumbnails directory (requires convert from Imagemagick)

 

Linux用户和群组

groupadd group_name 创建一个新用户组

groupdel group_name 删除一个用户组

groupmod -n new_group_name old_group_name 重命名一个用户组

useradd -c “Name Surname ” -g admin -d /home/user1 -s /bin/bash user1 创建一个属于 “admin” 用户组的用户

useradd user1 创建一个新用户

userdel -r user1 删除一个用户 ( ‘-r’ 排除主目录)

usermod -c “User FTP” -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性

passwd 修改口令

passwd user1 修改一个用户的口令 (只允许root执行)

chage -E 2010-12-31 user1 设置用户口令的失效期限

pwck 检查 ‘/etc/passwd’ 的文件格式和语法修正以及存在的用户

grpck 检查 ‘/etc/passwd’ 的文件格式和语法修正以及存在的群组

newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组

touch          创建空文件

文件搜索
find / -name file1 从 ‘/‘ 开始进入根文件系统搜索文件和目录
find / -user user1 搜索属于用户 ‘user1‘ 的文件和目录
find /home/user1 -name *.bin 在目录 ‘/ home/user1‘ 中搜索带有‘.bin‘ 结尾的文件
find /usr/bin -type f -atime +100 搜索在过去100天内未被使用过的执行文件
find /usr/bin -type f -mtime -10 搜索在10天内被创建或者修改过的文件
find / -name *.rpm -exec chmod 755 ‘{}‘ ; 搜索以 ‘.rpm‘ 结尾的文件并定义其权限
find / -xdev -name *.rpm 搜索以 ‘.rpm‘ 结尾的文件,忽略光驱、捷盘等可移动设备
locate *.ps 寻找以 ‘.ps‘ 结尾的文件 - 先运行 ‘updatedb‘ 命令
whereis halt 显示一个二进制文件、源码或man的位置
which halt 显示一个二进制文件或可执行文件的完整路径

who  用于显示系统中有哪些使用者正在上面,显示的资料包含了使用者ID、使用的终端机、从哪边连上来的、上线时间、呆滞时间、CPU 使用量、动作等等

Linux文件的权限

–- 使用 “+” 设置权限,使用 “-” 用于取消

ls -lh 显示权限

ls /tmp | pr -T5 -W$COLUMNS 将终端划分成5栏显示

chmod ugo+rwx directory1 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限

chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限

chown user1 file1 改变一个文件的所有人属性

chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性

chgrp group1 file1 改变文件的群组

chown user1:group1 file1 改变一个文件的所有人和群组属性

find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件

chmod u+s /bin/file1 设置一个二进制文件的 SUID 位 – 运行该文件的用户也被赋予和所有者同样的权限

chmod u-s /bin/file1 禁用一个二进制文件的 SUID位

chmod g+s /home/public 设置一个目录的SGID 位 – 类似SUID ,不过这是针对目录的

chmod g-s /home/public 禁用一个目录的 SGID 位

chmod o+t /home/public 设置一个文件的 STIKY 位 – 只允许合法所有人删除文件

chmod o-t /home/public 禁用一个目录的 STIKY 位

echo            创建带有内容的文件。

挂载一个文件系统
mount /dev/hda2 /mnt/hda2 挂载一个叫做hda2的盘 - 确定目录 ‘/ mnt/hda2‘ 已经存在
umount /dev/hda2 卸载一个叫做hda2的盘 - 先从挂载点 ‘/ mnt/hda2‘ 退出
fuser -km /mnt/hda2 当设备繁忙时强制卸载
umount -n /mnt/hda2 运行卸载操作而不写入 /etc/mtab 文件- 当文件为只读或当磁盘写满时非常有用
mount /dev/fd0 /mnt/floppy 挂载一个软盘
mount /dev/cdrom /mnt/cdrom 挂载一个cdrom或dvdrom
mount /dev/hdc /mnt/cdrecorder 挂载一个cdrw或dvdrom
mount /dev/hdb /mnt/cdrecorder 挂载一个cdrw或dvdrom
mount -o loop file.iso /mnt/cdrom 挂载一个文件或ISO镜像文件
mount -t vfat /dev/hda5 /mnt/hda5 挂载一个Windows FAT32文件系统
mount /dev/sda1 /mnt/usbdisk 挂载一个usb 捷盘或闪存设备
mount -t smbfs -o username=user,password=pass //WinClient/share /mnt/share 挂载一个windows网络共享

 

Linux文件的属性

–- 使用 “+” 设置权限,使用 “-” 用于取消

chattr +a file1 只允许以追加方式读写文件

chattr +c file1 允许这个文件能被内核自动压缩/解压

chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件

chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接

chattr +s file1 允许一个文件被安全地删除

chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘

chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件

lsattr 显示特殊的属性

cat              查看文件内容

磁盘空间
df -h 显示已经挂载的分区列表
ls -lSr |more 以尺寸大小排列文件和目录
du -sh dir1 估算目录 ‘dir1‘ 已经使用的磁盘空间‘
du -sk * | sort -rn 以容量大小为依据依次显示文件和目录的大小
rpm -q -a --qf ‘%10{SIZE}t%{NAME}n‘ | sort -k1,1n 以大小为依据依次显示已安装的rpm包所使用的空间 (fedora, redhat类系统)
dpkg-query -W -f=‘${Installed-Size;10}t${Package}n‘ | sort -k1,1n 以大小为依据显示已安装的deb包所使用的空间 (ubuntu, debian类系统)

whoami  用于显示自身用户名称,本指令相当于执行"id -un"指令

Linux打包和压缩文件

bunzip2 file1.bz2 解压一个叫做 ‘file1.bz2′的文件

bzip2 file1 压缩一个叫做 ‘file1′ 的文件

gunzip file1.gz 解压一个叫做 ‘file1.gz’的文件

gzip file1 压缩一个叫做 ‘file1′的文件

gzip -9 file1 最大程度压缩

rar a file1.rar test_file 创建一个叫做 ‘file1.rar’ 的包

rar a file1.rar file1 file2 dir1 同时压缩 ‘file1′, ‘file2′ 以及目录 ‘dir1′

rar x file1.rar 解压rar包

unrar x file1.rar 解压rar包

tar -cvf archive.tar file1 创建一个非压缩的 tarball

tar -cvf archive.tar file1 file2 dir1 创建一个包含了 ‘file1′, ‘file2′ 以及 ‘dir1′的档案文件

tar -tf archive.tar 显示一个包中的内容

tar -xvf archive.tar 释放一个包

tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下

tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包

tar -xvfj archive.tar.bz2 解压一个bzip2格式的压缩包

tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包

tar -xvfz archive.tar.gz 解压一个gzip格式的压缩包

zip file1.zip file1 创建一个zip格式的压缩包

zip -r file1.zip file1 file2 dir1 将几个文件和目录同时压缩成一个zip格式的压缩包

unzip file1.zip 解压一个zip格式压缩包

cp                拷贝

用户和群组
groupadd group_name 创建一个新用户组
groupdel group_name 删除一个用户组
groupmod -n new_group_name old_group_name 重命名一个用户组
useradd -c "Name Surname " -g admin -d /home/user1 -s /bin/bash user1 创建一个属于 "admin" 用户组的用户
useradd user1 创建一个新用户
userdel -r user1 删除一个用户 ( ‘-r‘ 排除主目录)
usermod -c "User FTP" -g system -d /ftp/user1 -s /bin/nologin user1 修改用户属性
passwd 修改口令
passwd user1 修改一个用户的口令 (只允许root执行)
chage -E 2005-12-31 user1 设置用户口令的失效期限
pwck 检查 ‘/etc/passwd‘ 的文件格式和语法修正以及存在的用户
grpck 检查 ‘/etc/passwd‘ 的文件格式和语法修正以及存在的群组
newgrp group_name 登陆进一个新的群组以改变新创建文件的预设群组

 

RPM 包 – (Fedora, Redhat及类似系统)

rpm -ivh package.rpm 安装一个rpm包

rpm -ivh –nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告

rpm -U package.rpm 更新一个rpm包但不改变其配置文件

rpm -F package.rpm 更新一个确定已经安装的rpm包

rpm -e package_name.rpm 删除一个rpm包

rpm -qa 显示系统中所有已经安装的rpm包

rpm -qa | grep httpd 显示所有名称中包含 “httpd” 字样的rpm包

rpm -qi package_name 获取一个已安装包的特殊信息

rpm -qg “System Environment/Daemons” 显示一个组件的rpm包

rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表

rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表

rpm -q package_name –whatrequires 显示与一个rpm包存在依赖关系的列表

rpm -q package_name –whatprovides 显示一个rpm包所占的体积

rpm -q package_name –scripts 显示在安装/删除期间所执行的脚本l

rpm -q package_name –changelog 显示一个rpm包的修改历史

rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供

rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表

rpm –import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书

rpm –checksig package.rpm 确认一个rpm包的完整性

rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性

rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间

rpm -Va 检查系统中所有已安装的rpm包- 小心使用

rpm -Vp package.rpm 确认一个rpm包还未安装

rpm2cpio package.rpm | cpio –extract –make-directories *bin* 从一个rpm包运行可执行文件

rpm -ivh /usr/src/redhat/RPMS/`arch`/package.rpm 从一个rpm源码安装一个构建好的包

rpmbuild –rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包

mv               移动或重命名

文件的权限 - 使用 "+" 设置权限,使用 "-" 用于取消
ls -lh 显示权限
ls /tmp | pr -T5 -W$COLUMNS 将终端划分成5栏显示
chmod ugo+rwx directory1 设置目录的所有人(u)、群组(g)以及其他人(o)以读(r )、写(w)和执行(x)的权限
chmod go-rwx directory1 删除群组(g)与其他人(o)对目录的读写执行权限
chown user1 file1 改变一个文件的所有人属性
chown -R user1 directory1 改变一个目录的所有人属性并同时改变改目录下所有文件的属性
chgrp group1 file1 改变文件的群组
chown user1:group1 file1 改变一个文件的所有人和群组属性
find / -perm -u+s 罗列一个系统中所有使用了SUID控制的文件
chmod u+s /bin/file1 设置一个二进制文件的 SUID 位 - 运行该文件的用户也被赋予和所有者同样的权限
chmod u-s /bin/file1 禁用一个二进制文件的 SUID位
chmod g+s /home/public 设置一个目录的SGID 位 - 类似SUID ,不过这是针对目录的
chmod g-s /home/public 禁用一个目录的 SGID 位
chmod o+t /home/public 设置一个文件的 STIKY 位 - 只允许合法所有人删除文件
chmod o-t /home/public 禁用一个目录的 STIKY 位

date  用来显示或设定系统的日期与时间

YUM 软件包升级器 – (Fedora, RedHat及类似系统)

yum install package_name 下载并安装一个rpm包

yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系

yum update package_name.rpm 更新当前系统中所有安装的rpm包

yum update package_name 更新一个rpm包

yum remove package_name 删除一个rpm包

yum list 列出当前系统中安装的所有包

yum search package_name 在rpm仓库中搜寻软件包

yum clean packages 清理rpm缓存删除下载的包

yum clean headers 删除所有头文件

yum clean all 删除所有缓存的包和头文件

rm               删除文件

文件的特殊属性 - 使用 "+" 设置权限,使用 "-" 用于取消
chattr +a file1 只允许以追加方式读写文件
chattr +c file1 允许这个文件能被内核自动压缩/解压
chattr +d file1 在进行文件系统备份时,dump程序将忽略这个文件
chattr +i file1 设置成不可变的文件,不能被删除、修改、重命名或者链接
chattr +s file1 允许一个文件被安全地删除
chattr +S file1 一旦应用程序对这个文件执行了写操作,使系统立刻把修改的结果写到磁盘
chattr +u file1 若文件被删除,系统会允许你在以后恢复这个被删除的文件
lsattr 显示特殊的属性

 

DEB 包 (Debian, Ubuntu 以及类似系统)

dpkg -i package.deb 安装/更新一个 deb 包

dpkg -r package_name 从系统删除一个 deb 包

dpkg -l 显示系统中所有已经安装的 deb 包

dpkg -l | grep httpd 显示所有名称中包含 “httpd” 字样的deb包

dpkg -s package_name 获得已经安装在系统中一个特殊包的信息

dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表

dpkg –contents package.deb 显示尚未安装的一个包所提供的文件列表

dpkg -S /bin/ping 确认所给的文件由哪个deb包提供

     -r            递归删除,可删除子目录及文件

打包和压缩文件
bunzip2 hucht.bz2 解压一个叫做 ‘hucht.bz2‘的文件
bzip2 hucht压缩一个叫做 ‘hucht‘ 的文件
gunzip hucht.gz 解压一个叫做 ‘huchht.gz‘的文件
gzip huc压缩一个叫做 ‘huc‘的文件
gzip -9 hucht最大程度压缩
rar a hucht.rar test_file 创建一个叫做 ‘hucht.rar‘ 的包
rar a hucht.rar hucht file2 dir1 同时压缩 ‘hucht‘, ‘file2‘ 以及目录 ‘dir1‘
rar x file1.rar 解压rar包
unrar x file1.rar 解压rar包
tar -cvf archive.tar hucht创建一个非压缩的 tarball
tar -cvf archive.tar hucht huc dir1 创建一个包含了 ‘hucht‘, ‘huc‘ 以及 ‘dir1‘的档案文件
tar -tf archive.tar 显示一个包中的内容
tar -xvf archive.tar 释放一个包
tar -xvf archive.tar -C /tmp 将压缩包释放到 /tmp目录下
tar -cvfj archive.tar.bz2 dir1 创建一个bzip2格式的压缩包
tar -xvfj archive.tar.bz2 解压一个bzip2格式的压缩包
tar -cvfz archive.tar.gz dir1 创建一个gzip格式的压缩包
tar -xvfz archive.tar.gz 解压一个gzip格式的压缩包
zip file1.zip file1 创建一个zip格式的压缩包
zip -r hucht.zip hucht huc dir1 将几个文件和目录同时压缩成一个zip格式的压缩包
unzip hucht.zip 解压一个zip格式压缩包

clear  清屏(Ctrl+l)

APT 软件工具 (Debian, Ubuntu 以及类似系统)

apt-get install package_name 安装/更新一个 deb 包

apt-cdrom install package_name 从光盘安装/更新一个 deb 包

apt-get update 升级列表中的软件包

apt-get upgrade 升级所有已安装的软件

apt-get remove package_name 从系统删除一个deb包

apt-get check 确认依赖的软件仓库正确

apt-get clean 从下载的软件包中清理缓存

apt-cache search searched-package 返回包含所要搜索字符串的软件包名称

     -f            强制删除

RPM 包 - (Fedora, Redhat及类似系统)
rpm -ivh package.rpm 安装一个rpm包
rpm -ivh --nodeeps package.rpm 安装一个rpm包而忽略依赖关系警告
rpm -U package.rpm 更新一个rpm包但不改变其配置文件
rpm -F package.rpm 更新一个确定已经安装的rpm包
rpm -e package_name.rpm 删除一个rpm包
rpm -qa 显示系统中所有已经安装的rpm包
rpm -qa | grep httpd 显示所有名称中包含 "httpd" 字样的rpm包
rpm -qi package_name 获取一个已安装包的特殊信息
rpm -qg "System Environment/Daemons" 显示一个组件的rpm包
rpm -ql package_name 显示一个已经安装的rpm包提供的文件列表
rpm -qc package_name 显示一个已经安装的rpm包提供的配置文件列表
rpm -q package_name --whatrequires 显示与一个rpm包存在依赖关系的列表
rpm -q package_name --whatprovides 显示一个rpm包所占的体积
rpm -q package_name --scripts 显示在安装/删除期间所执行的脚本l
rpm -q package_name --changelog 显示一个rpm包的修改历史
rpm -qf /etc/httpd/conf/httpd.conf 确认所给的文件由哪个rpm包所提供
rpm -qp package.rpm -l 显示由一个尚未安装的rpm包提供的文件列表
rpm --import /media/cdrom/RPM-GPG-KEY 导入公钥数字证书
rpm --checksig package.rpm 确认一个rpm包的完整性
rpm -qa gpg-pubkey 确认已安装的所有rpm包的完整性
rpm -V package_name 检查文件尺寸、 许可、类型、所有者、群组、MD5检查以及最后修改时间
rpm -Va 检查系统中所有已安装的rpm包- 小心使用
rpm -Vp package.rpm 确认一个rpm包还未安装
rpm2cpio package.rpm | cpio --extract --make-directories *bin* 从一个rpm包运行可执行文件
rpm -ivh /usr/src/redhat/RPMS/arch/package.rpm 从一个rpm源码安装一个构建好的包
rpmbuild --rebuild package_name.src.rpm 从一个rpm源码构建一个 rpm 包

 

Linux查看文件内容

cat file1 从第一个字节开始正向查看文件的内容

tac file1 从最后一行开始反向查看一个文件的内容

more file1 查看一个长文件的内容

less file1 类似于 ‘more’ 命令,但是它允许在文件中和正向操作一样的反向操作

head -2 file1 查看一个文件的前两行

tail -2 file1 查看一个文件的最后两行

tail -f /var/log/messages 实时查看被添加到一个文件中的内容

find              在文件系统中搜索某文件

YUM 软件包升级器 - (Fedora, RedHat及类似系统)
yum install package_name 下载并安装一个rpm包
yum localinstall package_name.rpm 将安装一个rpm包,使用你自己的软件仓库为你解决所有依赖关系
yum update package_name.rpm 更新当前系统中所有安装的rpm包
yum update package_name 更新一个rpm包
yum remove package_name 删除一个rpm包
yum list 列出当前系统中安装的所有包
yum search package_name 在rpm仓库中搜寻软件包
yum clean packages 清理rpm缓存删除下载的包
yum clean headers 删除所有头文件
yum clean all 删除所有缓存的包和头文件

su  用于变更为其他使用者的身份,除 root 外,需要键入该使用者的密码

Linux文本处理

cat file1 file2 … | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT

cat file1 | command( sed, grep, awk, grep, etc…) > result.txt 合并一个文件的详细说明文本,并将简介写入一个新文件中

cat file1 | command( sed, grep, awk, grep, etc…) >> result.txt 合并一个文件的详细说明文本,并将简介写入一个已有的文件中

grep Aug /var/log/messages 在文件 ‘/var/log/messages’中查找关键词”Aug”

grep ^Aug /var/log/messages 在文件 ‘/var/log/messages’中查找以”Aug”开始的词汇

grep [0-9] /var/log/messages 选择 ‘/var/log/messages’ 文件中所有包含数字的行

grep Aug -R /var/log/* 在目录 ‘/var/log’ 及随后的目录中搜索字符串”Aug”

sed ‘s/stringa1/stringa2/g’ example.txt 将example.txt文件中的 “string1″ 替换成 “string2″

sed ‘/^$/d’ example.txt 从example.txt文件中删除所有空白行

sed ‘/ *#/d; /^$/d’ example.txt 从example.txt文件中删除所有注释和空白行

echo ‘esempio’ | tr ‘[:lower:]‘ ‘[:upper:]‘ 合并上下单元格内容

sed -e ’1d’ result.txt 从文件example.txt 中排除第一行

sed -n ‘/stringa1/p’ 查看只包含词汇 “string1″的行

sed -e ‘s/ *$//’ example.txt 删除每一行最后的空白字符

sed -e ‘s/stringa1//g’ example.txt 从文档中只删除词汇 “string1″ 并保留剩余全部

sed -n ’1,5p;5q’ example.txt 查看从第一行到第5行内容

sed -n ’5p;5q’ example.txt 查看第5行

sed -e ‘s/00*/0/g’ example.txt 用单个零替换多个零

cat -n file1 标示文件的行数

cat example.txt | awk ‘NR%2==1′ 删除example.txt文件中的所有偶数行

echo a b c | awk ‘{print $1}’ 查看一行第一栏

echo a b c | awk ‘{print $1,$3}’ 查看一行的第一和第三栏

paste file1 file2 合并两个文件或两栏的内容

paste -d ‘+’ file1 file2 合并两个文件或两栏的内容,中间用”+”区分

sort file1 file2 排序两个文件的内容

sort file1 file2 | uniq 取出两个文件的并集(重复的行只保留一份)

sort file1 file2 | uniq -u 删除交集,留下其他的行

sort file1 file2 | uniq -d 取出两个文件的交集(只留下同时存在于两个文件中的文件)

comm -1 file1 file2 比较两个文件的内容只删除 ‘file1′ 所包含的内容

comm -2 file1 file2 比较两个文件的内容只删除 ‘file2′ 所包含的内容

comm -3 file1 file2 比较两个文件的内容只删除两个文件共有的部分

wc                统计文本中行数、字数、字符数

DEB 包 (Debian, Ubuntu 以及类似系统)
dpkg -i package.deb 安装/更新一个 deb 包
dpkg -r package_name 从系统删除一个 deb 包
dpkg -l 显示系统中所有已经安装的 deb 包
dpkg -l | grep httpd 显示所有名称中包含 "httpd" 字样的deb包
dpkg -s package_name 获得已经安装在系统中一个特殊包的信息
dpkg -L package_name 显示系统中已经安装的一个deb包所提供的文件列表
dpkg --contents package.deb 显示尚未安装的一个包所提供的文件列表
dpkg -S /bin/ping 确认所给的文件由哪个deb包提供

例:su - root    #切换到root用户

Linux字符设置和文件格式转换

dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX

unix2dos fileunix.txt filedos.txt 将一个文本文件的格式从UNIX转换成MSDOS

recode ..HTML < page.txt > page.html 将一个文本文件转换成html

recode -l | more 显示所有允许的转换格式

grep             在文本文件中查找某个字符串

APT 软件工具 (Debian, Ubuntu 以及类似系统)
apt-get install package_name 安装/更新一个 deb 包
apt-cdrom install package_name 从光盘安装/更新一个 deb 包
apt-get update 升级列表中的软件包
apt-get upgrade 升级所有已安装的软件
apt-get remove package_name 从系统删除一个deb包
apt-get check 确认依赖的软件仓库正确
apt-get clean 从下载的软件包中清理缓存
apt-cache search searched-package 返回包含所要搜索字符串的软件包名称

 

Linux文件系统分析

badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块

fsck /dev/hda1 修复/检查hda1磁盘上linux文件系统的完整性

fsck.ext2 /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性

e2fsck /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性

e2fsck -j /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性

fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性

fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统的完整性

fsck.msdos /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性

dosfsck /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性

rmdir           删除空目录

查看文件内容
cat file1 从第一个字节开始正向查看文件的内容
tac file1 从最后一行开始反向查看一个文件的内容
more file1 查看一个长文件的内容
less file1 类似于 ‘more‘ 命令,但是它允许在文件中和正向操作一样的反向操作
head -2 file1 查看一个文件的前两行
tail -2 file1 查看一个文件的最后两行
tail -f /var/log/messages 实时查看被添加到一个文件中的内容

cd  用于切换当前工作目录至 dirName(目录参数);其中 dirName 表示法可为绝对路径或相对路径。若目录名称省略,则变换至使用者的 home 目录 (也就是刚 login 时所在的目录);另外,"~" 也表示为 home 目录 的意思,"." 则是表示目前所在的目录,".." 则表示目前目录位置的上一层目录

Linux初始化文件系统

mkfs /dev/hda1 在hda1分区创建一个文件系统

mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统

mke2fs -j /dev/hda1 在hda1分区创建一个linux ext3(日志型)的文件系统

mkfs -t vfat 32 -F /dev/hda1 创建一个 FAT32 文件系统

fdformat -n /dev/fd0 格式化一个软盘

mkswap /dev/hda3 创建一个swap文件系统

tree             树形结构显示目录,需要安装tree包

文本处理
cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT
cat file1 | command( sed, grep, awk, grep, etc...) > result.txt 合并一个文件的详细说明文本,并将简介写入一个新文件中
cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt 合并一个文件的详细说明文本,并将简介写入一个已有的文件中
grep Aug /var/log/messages 在文件 ‘/var/log/messages‘中查找关键词"Aug"
grep ^Aug /var/log/messages 在文件 ‘/var/log/messages‘中查找以"Aug"开始的词汇
grep [0-9] /var/log/messages 选择 ‘/var/log/messages‘ 文件中所有包含数字的行
grep Aug -R /var/log/* 在目录 ‘/var/log‘ 及随后的目录中搜索字符串"Aug"
sed ‘s/stringa1/stringa2/g‘ example.txt 将example.txt文件中的 "string1" 替换成 "string2"
sed ‘/^$/d‘ example.txt 从example.txt文件中删除所有空白行
sed ‘/ *#/d; /^$/d‘ example.txt 从example.txt文件中删除所有注释和空白行
echo ‘esempio‘ | tr ‘[:lower:]‘ ‘[:upper:]‘ 合并上下单元格内容
sed -e ‘1d‘ result.txt 从文件example.txt 中排除第一行
sed -n ‘/stringa1/p‘ 查看只包含词汇 "string1"的行
sed -e ‘s/ *$//‘ example.txt 删除每一行最后的空白字符
sed -e ‘s/stringa1//g‘ example.txt 从文档中只删除词汇 "string1" 并保留剩余全部
sed -n ‘1,5p;5q‘ example.txt 查看从第一行到第5行内容
sed -n ‘5p;5q‘ example.txt 查看第5行
sed -e ‘s/00*/0/g‘ example.txt 用单个零替换多个零
cat -n file1 标示文件的行数
cat example.txt | awk ‘NR%2==1‘ 删除example.txt文件中的所有偶数行
echo a b c | awk ‘{print $1}‘ 查看一行第一栏
echo a b c | awk ‘{print $1,$3}‘ 查看一行的第一和第三栏
paste file1 file2 合并两个文件或两栏的内容
paste -d ‘+‘ file1 file2 合并两个文件或两栏的内容,中间用"+"区分
sort file1 file2 排序两个文件的内容
sort file1 file2 | uniq 取出两个文件的并集(重复的行只保留一份)
sort file1 file2 | uniq -u 删除交集,留下其他的行
sort file1 file2 | uniq -d 取出两个文件的交集(只留下同时存在于两个文件中的文件)
comm -1 file1 file2 比较两个文件的内容只删除 ‘file1‘ 所包含的内容
comm -2 file1 file2 比较两个文件的内容只删除 ‘file2‘ 所包含的内容
comm -3 file1 file2 比较两个文件的内容只删除两个文件共有的部分
cat file | grep -v ‘123‘ // 查看文件file,剔除包含123的行
字符设置和文件格式转换
dos2unix filedos.txt fileunix.txt 将一个文本文件的格式从MSDOS转换成UNIX
unix2dos fileunix.txt filedos.txt 将一个文本文件的格式从UNIX转换成MSDOS
recode ..HTML < page.txt > page.html 将一个文本文件转换成html
recode -l | more 显示所有允许的转换格式
文件系统分析
badblocks -v /dev/hda1 检查磁盘hda1上的坏磁块
fsck /dev/hda1 修复/检查hda1磁盘上linux文件系统的完整性
fsck.ext2 /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性
e2fsck /dev/hda1 修复/检查hda1磁盘上ext2文件系统的完整性
e2fsck -j /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性
fsck.ext3 /dev/hda1 修复/检查hda1磁盘上ext3文件系统的完整性
fsck.vfat /dev/hda1 修复/检查hda1磁盘上fat文件系统的完整性
fsck.msdos /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性
dosfsck /dev/hda1 修复/检查hda1磁盘上dos文件系统的完整性
初始化一个文件系统
mkfs /dev/hda1 在hda1分区创建一个文件系统
mke2fs /dev/hda1 在hda1分区创建一个linux ext2的文件系统
mke2fs -j /dev/hda1 在hda1分区创建一个linux ext3(日志型)的文件系统
mkfs -t vfat 32 -F /dev/hda1 创建一个 FAT32 文件系统
fdformat -n /dev/fd0 格式化一个软盘
mkswap /dev/hda3 创建一个swap文件系统
SWAP文件系统
mkswap /dev/hda3 创建一个swap文件系统
swapon /dev/hda3 启用一个新的swap文件系统
swapon /dev/hda2 /dev/hdb3 启用两个swap分区

例:cd /usr/bin/    #跳到 /usr/bin/

SWAP文件系统

mkswap /dev/hda3 创建一个swap文件系统

swapon /dev/hda3 启用一个新的swap文件系统

swapon /dev/hda2 /dev/hdb3 启用两个swap分区

pwd              显示当前目录

 

cd ~    #跳到自己的 home 目录

Linux备份

dump -0aj -f /tmp/home0.bak /home 制作一个 ‘/home’ 目录的完整备份

dump -1aj -f /tmp/home0.bak /home 制作一个 ‘/home’ 目录的交互式备份

restore -if /tmp/home0.bak 还原一个交互式备份

rsync -rogpav –delete /home /tmp 同步两边的目录

rsync -rogpav -e ssh –delete /home ip_address:/tmp 通过SSH通道rsync

rsync -az -e ssh –delete ip_addr:/home/public /home/local 通过ssh和压缩将一个远程目录同步到本地目录

rsync -az -e ssh –delete /home/local ip_addr:/home/public 通过ssh和压缩将本地目录同步到远程目录

dd bs=1M if=/dev/hda | gzip | ssh [email protected]_addr ‘dd of=hda.gz’ 通过ssh在远程主机上执行一次备份本地磁盘的操作

dd if=/dev/sda of=/tmp/file1 备份磁盘内容到一个文件

tar -Puf backup.tar /home/user 执行一次对 ‘/home/user’ 目录的交互式备份操作

( cd /tmp/local/ && tar c . ) | ssh -C [email protected]_addr ‘cd /home/share/ && tar x -p’ 通过ssh在远程目录中复制一个目录内容

( tar c /home ) | ssh -C [email protected]_addr ‘cd /home/backup-home && tar x -p’ 通过ssh在远程目录中复制一个本地目录

tar cf – . | (cd /tmp/backup ; tar xf – ) 本地将一个目录复制到另一个地方,保留原有权限及链接

find /home/user1 -name ‘*.txt’ | xargs cp -av –target-directory=/home/backup/ –parents 从一个目录查找并复制所有以 ‘.txt’ 结尾的文件到另一个目录

find /var/log -name ‘*.log’ | tar cv –files-from=- | bzip2 > log.tar.bz2 查找所有以 ‘.log’ 结尾的文件并做成一个bzip包

dd if=/dev/hda of=/dev/fd0 bs=512 count=1 做一个将 MBR (Master Boot Record)内容复制到软盘的动作

dd if=/dev/fd0 of=/dev/hda bs=512 count=1 从已经保存到软盘的备份中恢复MBR内容

ln                  创建链接文件

网络 - (以太网和WIFI无线)
ifconfig eth0 显示一个以太网卡的配置
ifup eth0 启用一个 ‘eth0‘ 网络设备
ifdown eth0 禁用一个 ‘eth0‘ 网络设备
ifconfig eth0 192.168.1.1 netmask 255.255.255.0 控制IP地址
ifconfig eth0 promisc 设置 ‘eth0‘ 成混杂模式以嗅探数据包 (sniffing)
dhclient eth0 以dhcp模式启用 ‘eth0

cd ../..    #跳到目前目录的上上两层

Linux光盘操作

cdrecord -v gracetime=2 dev=/dev/cdrom -eject blank=fast -force 清空一个可复写的光盘内容

mkisofs /dev/cdrom > cd.iso 在磁盘上创建一个光盘的iso镜像文件

mkisofs /dev/cdrom | gzip > cd_iso.gz 在磁盘上创建一个压缩了的光盘iso镜像文件

mkisofs -J -allow-leading-dots -R -V “Label CD” -iso-level 4 -o ./cd.iso data_cd 创建一个目录的iso镜像文件

cdrecord -v dev=/dev/cdrom cd.iso 刻录一个ISO镜像文件

gzip -dc cd_iso.gz | cdrecord dev=/dev/cdrom – 刻录一个压缩了的ISO镜像文件

mount -o loop cd.iso /mnt/iso 挂载一个ISO镜像文件

cd-paranoia -B 从一个CD光盘转录音轨到 wav 文件中

cd-paranoia — “-3″ 从一个CD光盘转录音轨到 wav 文件中(参数-3)

cdrecord –scanbus 扫描总线以识别scsi通道

dd if=/dev/hdc | md5sum 校验一个设备的md5sum编码,例如一张 CD

显示Linux系统信息 arch 显示机器的处理器架构(1) uname -m 显示机器的处理器架构(2) uname -r 显示正在使用的内核...

more、less  分页显示文本文件内容

 

 

head、tail    显示文件头、尾内容

 

useradd  用于建立用户帐号;帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号;使用useradd指令所建立的帐号,实际上是保存在/etc/passwd文本文件中

ctrl+alt+F1  命令行全屏模式

文本处理
cat file1 file2 ... | command <> file1_in.txt_or_file1_out.txt general syntax for text manipulation using PIPE, STDIN and STDOUT
cat file1 | command( sed, grep, awk, grep, etc...) > result.txt 合并一个文件的详细说明文本,并将简介写入一个新文件中
cat file1 | command( sed, grep, awk, grep, etc...) >> result.txt 合并一个文件的详细说明文本,并将简介写入一个已有的文件中
grep Aug /var/log/messages 在文件 ‘/var/log/messages‘中查找关键词"Aug"
grep ^Aug /var/log/messages 在文件 ‘/var/log/messages‘中查找以"Aug"开始的词汇
grep [0-9] /var/log/messages 选择 ‘/var/log/messages‘ 文件中所有包含数字的行
grep Aug -R /var/log/* 在目录 ‘/var/log‘ 及随后的目录中搜索字符串"Aug"
sed ‘s/stringa1/stringa2/g‘ example.txt 将example.txt文件中的 "string1" 替换成 "string2"
sed ‘/^$/d‘ example.txt 从example.txt文件中删除所有空白行
sed ‘

 

 

passwd  用来更改使用者的密码

系统管理命令

例:passwd pd    #设置pd用户的密码

stat              显示指定文件的详细信息,比ls更详细

 

who               显示在线登陆用户

usermod  用来修改用户帐号的各项设定

whoami          显示当前操作用户

 

hostname      显示主机名

ls  用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)

uname           显示系统信息

语法:ls -al name

top                动态显示当前耗费资源最多进程信息

      ls -i /pd.txt    #查看pd.txt的inode号

ps                  显示瞬间进程状态 ps -aux

-a 显示所有文件及目录 (ls内定将文件名或目录名称开头为"."的视为隐藏档,不会列出)

du                  查看目录大小 du -h /home带有单位显示目录信息

-l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出

df                  查看磁盘大小 df -h 带有单位显示磁盘信息

 

ifconfig          查看网络情况

pwd 用于显示工作目录;执行pwd指令可立刻得知您目前所在的工作目录的绝

ping                测试网络连通

对路径名称

netstat          显示网络状态信息

 

man                命令不会用了,找男人  如:man ls

cp  主要用于复制文件或目录

clear              清屏

 

alias               对命令重命名 如:alias showmeit="ps -aux" ,另外解除使用unaliax showmeit

mv  用来为文件或目录改名、或将文件或目录移入其它位置

kill                 杀死进程,可以先用ps 或 top命令查看进程的id,然后再用kill命令杀死进程。

例:mv aa bb    #将文件aa更名为bb

 

mv info/ logs    #将info目录放入logs目录中。注意,如果logs目录不存在,则该命令将info改名为logs

打包压缩相关命令

 

gzip:

mkdir  用于建立名称为dirName之子目录

bzip2:

参数:-p 确保目录名称存在,不存在的就建一个

tar:                打包压缩

例:mkdir aa    #在工作目录下,建立一个名为aa的子目录

     -c              归档文件

mkdir -p bb/Test    #在工作目录下的bb目录中,建立一个名为 Test 的子目录;若bb目录原本不存在,则建立一个;(注:本例若不加 -p,且原本bb目录不存在,则产生错误)

     -x              压缩文件

 

     -z              gzip压缩文件

touch  用于修改文件或者目录的时间属性,包括存取时间和更改时间;若文件不存在,系统会建立一个新的文件;ls -l 可以显示档案的时间记录

     -j              bzip2压缩文件

例:touch text.txt    #新建text.txt

     -v              显示压缩或解压缩过程 v(view)

    touch {1..9}.txt    #相当于9条命令,新建1.txt到9.txt

     -f              使用档名

 

例:

rm  用于删除一个文件或者目录

tar -cvf /home/abc.tar /home/abc              只打包,不压缩

rm text.txt    #删除文件text.txt

tar -zcvf /home/abc.tar.gz /home/abc        打包,并用gzip压缩

rm -r homework    #删除目录homework

tar -jcvf /home/abc.tar.bz2 /home/abc      打包,并用bzip2压缩

rm -r *    #删除当前目录下的所有文件及目录

当然,如果想解压缩,就直接替换上面的命令  tar -cvf  / tar -zcvf  / tar -jcvf 中的“c” 换成“x” 就可以了。

 

 

#删除文件可以直接使用rm命令,若删除目录则必须配合选项"-r"

关机/重启机器

文件一旦通过rm命令删除,则无法恢复,所以必须格外小心地使用该命令

shutdown

 

     -r             关机重启

cat  用于连接文件并打印到标准输出设备上

     -h             关机不重启

例:cat text.txt    #查看text.txt里面的内容

     now          立刻关机

 

halt               关机

head  指定显示头部内容的文件列表

reboot          重启

例:head -n file    #显示file文件的前n行(不带-n默认显示10行)

 

 

Linux管道

tail  可用于查看文件的内容,有一个常用的参数 -f 常用于查阅正在改变的日志文件;tail -f file会把 file文件里的最尾部的内容显示在屏幕上,并且不断刷新,只要 file更新就可以看到最新的文件内容

将一个命令的标准输出作为另一个命令的标准输入。也就是把几个命令组合起来使用,后一个命令除以前一个命令的结果。

例:tail -n file    #显示file文件的后n行(不带-n默认显示10行)

例:grep -r "close" /home/* | more       在home目录下所有文件中查找,包括close的文件,并分页输出。

tail -f file    #跟踪名为file文件的增长情况

 

 

Linux软件包管理

more  命令类似 cat ,不过会以一页一页的形式显示,更方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能(与 vi 相似),使用中的说明文件,请按 h

dpkg (Debian Package)管理工具,软件包名以.deb后缀。这种方法适合系统不能联网的情况下。

例:more +n file    #从第n行开始显示file文档内容

比如安装tree命令的安装包,先将tree.deb传到Linux系统中。再使用如下命令安装。

 

sudo dpkg -i tree_1.5.3-1_i386.deb         安装软件

less  与 more 类似,但使用 less 可以随意浏览文件,而 more 仅能向前移动,却不能向后移动,而且 less 在查看之前不会加载整个文件

sudo dpkg -r tree                                     卸载软件

 

 

groupadd  用于创建一个新的工作组,新工作组的信息将被添加到系统文件中

注:将tree.deb传到Linux系统中,有多种方式。VMwareTool,使用挂载方式;使用winSCP工具等;

 

APT(Advanced Packaging Tool)高级软件工具。这种方法适合系统能够连接互联网的情况。

groupmod  用于更改群组识别码或名称

依然以tree为例

[root@w3cschool.cc ~]# groupadd linuxso

sudo apt-get install tree                         安装tree

[root@w3cschool.cc ~]# tail -1 /etc/group

sudo apt-get remove tree                       卸载tree

linuxso:x:500:

sudo apt-get update                                 更新软件

[root@w3cschool.cc ~]# groupmod -n linux linuxso

sudo apt-get upgrade        

[root@w3cschool.cc ~]# tail -1 /etc/group

 

linux:x:500:

将.rpm文件转为.deb文件

 

.rpm为RedHat使用的软件格式。在Ubuntu下不能直接使用,所以需要转换一下。

chgrp  用于变更文件或目录的所属群组;在UNIX系统家族里,文件或目录权限的掌控以拥有者及所属群组来管理。您可以使用chgrp指令去变更文件与目录的所属群组,设置方式采用群组名称或群组识别码皆可

sudo alien abc.rpm

 

 

chown  Linux/Unix 是多人多工操作系统,所有的文件皆有拥有者;利用 chown 将指定文件的拥有者改为指定的用户或组,用户可以是用户名或者用户ID;组可以是组名或者组ID;文件是以空格分开的要改变权限的文件列表,支持通配符;一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者没有权限可以改变别人的文件拥有者,也没有权限可以自己的文件拥有者改设为别人;只有系统管理者(root)才有这样的权限

vim使用

说明:chown 属主.属组 参数    #改属主属组

vim三种模式:命令模式、插入模式、编辑模式。使用ESC或i或:来切换模式。

      chown 属主 参数    #只改属主

命令模式下:

      chown .属组 参数    #只改属组

:q                      退出

      chown -R属主.属组 text(text/aa/bb/)    #递归改text目录及目录下所有文件的属主属组(递归改bb目录及目录下所有文件的属主属组)

:q!                     强制退出

 

:wq                   保存并退出

chmod  Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他;利用 chmod 可以藉以控制文件如何被他人所调用

:set number     显示行号

  1. u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group者,o 表示其他以外的人,a 表示这三者皆是
  2. r(4)表示可读取,w(2)表示可写入,x(1)表示可执行

:set nonumber  隐藏行号

例:chmod -R file    #对file目录下的所有与子目录进行相同的权限变更(即以递回的方式逐个变更)

/apache            在文档中查找apache 按n跳到下一个,shift+n上一个

    chmod 777 file    #对file文件u、g、o的权限改为可读可写可执行

yyp                   复制光标所在行,并粘贴

 

h(左移一个字符←)、j(下一行↓)、k(上一行↑)、l(右移一个字符→)

./  运行命令

 

 

用户及用户组管理

Linux下可以用 ll 命令来判断文件类型,主要是根据每行的首个字符来判断:

/etc/passwd    存储用户账号

本文由胜博发-操作发布,转载请注明来源:Linux的基本操作,所接触到的技术也就会越来越多