1、Linux的常用命令
pwd 命令
简介: Print the name of the current working directory.
格式: pwd [-LP]
实例1 [root@centos6 local]# pwd #显示当前的工作目录在/usr/local下 /usr/local
cd 命令
简介: Change the shell working directory.
格式: cd [-L|-P] [dir]
实例1: [root@centos6 network-scripts]# cd /usr/local/ [root@centos6 local]# pwd /usr/local
实例2: [root@centos6 local]# cd .. #到上一级目录(..:为上一级目录) [root@centos6 usr]# pwd /usr
实例3: [root@centos6 usr]# cd #回到家目录 [root@centos6 ~]# pwd /root
实例4: [root@centos6 ~]# cd - /usr [root@centos6 usr]# pwd /usr
ls 命令
简介: ls - list directory contents
格式: ls [OPTION]... [FILE]...
选项: -a: 列出所有文件,包括以 "." 开头的隐含文件 -l: 列出文件的详细信息,如创建者,创建时间,文件的读写权限列表等等 -R: 递归列出遇到的子目录 -d: 将目录名象其它文件一样列出,而不是列出它们的内容 -1: 文件独立分行显示 -S: 按文件大小而不是字典序排序目录内容,大文件靠前 -u: 使用最近访问时间代替最近修改时间为依据来排序 -U: 不排序目录内容;按它们在磁盘上存储的顺序列出
实例1: [root@centos6 ~]# ls anaconda-ks.cfg edrawmax-cn.exe edrawmax_V8.3.2.550_setup.exe install.log install.log.syslog Office_2016.rar test wget-log [root@centos6 ~]# ls -a #显示已.开头的因此文件以及当前目录.与上级目录.. . anaconda-ks.cfg .bash_logout .bashrc edrawmax-cn.exe install.log .lesshst .ssh test wget-log .. .bash_history .bash_profile .cshrc edrawmax_V8.3.2.550_setup.exe install.log.syslog Office_2016.rar .tcshrc .viminfo
实例2: [root@centos6 ~]# ls -l total 171436 -rw-------. 1 root root 2429 Aug 2 09:46 anaconda-ks.cfg -rw-r--r-- 1 root root 3604480 Aug 2 13:28 edrawmax-cn.exe -rw-r--r-- 1 root root 171294244 Jul 11 10:39 edrawmax_V8.3.2.550_setup.exe -rw-r--r--. 1 root root 45324 Aug 2 09:46 install.log -rw-r--r--. 1 root root 9963 Aug 2 09:44 install.log.syslog -rw-r--r-- 1 root root 137601 Aug 2 10:49 Office_2016.rar drwxr-xr-x 2 root root 4096 Aug 2 18:57 test -rw-r--r-- 1 root root 429430 Aug 2 13:01 wget-log
实例3: [root@centos6 boot]# pwd /boot [root@centos6 boot]# ls -R .: config-2.6.32-642.el6.x86_64 initramfs-2.6.32-642.el6.x86_64.img symvers-2.6.32-642.el6.x86_64.gz efi initrd-2.6.32-642.el6.x86_64kdump.img System.map-2.6.32-642.el6.x86_64 grub lost+found vmlinuz-2.6.32-642.el6.x86_64 ./efi: EFI ./efi/EFI: redhat ./efi/EFI/redhat: grub.efi ./grub: device.map fat_stage1_5 grub.conf jfs_stage1_5 minix_stage1_5 splash.xpm.gz stage2 vstafs_stage1_5 e2fs_stage1_5 ffs_stage1_5 iso9660_stage1_5 menu.lst reiserfs_stage1_5 stage1 ufs2_stage1_5 xfs_stage1_5 ./lost+found:
实例4 [root@centos6 ~]# ls -1 anaconda-ks.cfg install.log install.log.syslog Office_2016.rar test wget-log
stat 命令
简介: stat - display file or file system status
格式: stat [OPTION]... FILE...
实例1: [root@centos6 ~]# stat anaconda-ks.cfg File: `anaconda-ks.cfg' Size: 2429 Blocks: 8 IO Block: 4096 regular file Device: fd00h/64768d Inode: 131083 Links: 1 Access: (0600/-rw-------) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2016-08-02 18:57:51.284999765 +0800 Modify: 2016-08-02 09:46:34.172999723 +0800 Change: 2016-08-02 09:46:38.611999719 +0800
touch 命令
简介: touch - change file timestamps
格式: touch [OPTION]... FILE...
选项: -a: 仅改变文件的访问时间 -m: 仅改变文件的修改时间 -t: 设置文件的访问、修改、改变时间,[[CC]YY]MMDDhhmm[.ss] -c: 如果文件不存在,则不予创建
实例1: 使用-a选项更改文件的访问时间,以系统时间为准
实例2:
实例3:
cp 命令
简介: cp - copy files and directories
格式: cp [OPTION]... [-T] SOURCE DEST cp [OPTION]... SOURCE... DIRECTORY cp [OPTION]... -t DIRECTORY SOURCE...
格式(1) cp SOURCE DEST,详解如下: SRC是文件: 如果目标不存在:新建DEST,并将SRC中内容填充至新建DEST中 如果目标存在: 如果DEST是文件:将SRC中的内容覆盖至DEST中,基于安全,建议为cp命令使用-i选项 如果DEST是目录:在DEST下新建与原文件同名的文件,并将SRC中内容填充至新文件中 格式(2) cp SRC... DEST SRC...:多个文件 DEST必须存在,且为目录,其它情形均会出错; 格式(3) cp SRC DEST SRC是目录:此时使用选项:-r 如果DEST不存在:则创建指定目录,复制SRC目录中所有文件至DEST中; 如果DEST存在: 如果DEST是文件:报错 如果DEST是目录:复制SRC目录中所有文件至DEST中
选项: -a:复制时,尽可能保持文件的结构和属性.(但不保持目录结构)等同于 -dpR -d:复制符号链接作为符号链接而不是复制它指向的文件, 并且保护在副本中原文件之间的硬链接 -f:强制 -i:交互式 -r:递归地复制目录 --preserv:保持原始文件的所有者,组,许可,和时间表属性 -p:与--preserv 一致 -v:显示复制过程
实例1 [root@centos6 ~]# cp -r /usr/local /testdir/ #递归复制 cp: overwrite `/testdir/local/share/applications/mimeinfo.cache'? y [root@centos6 ~]# ls -R /testdir/ #递归查看 /testdir/: local /testdir/local: bin etc games include lib lib64 libexec sbin share src /testdir/local/bin: /testdir/local/etc: /testdir/local/games: /testdir/local/include: /testdir/local/lib: /testdir/local/lib64: /testdir/local/libexec: /testdir/local/sbin: /testdir/local/share: applications info man ...
实例2: [root@centos6 local]# pwd /testdir/local [root@centos6 local]# ls bin etc games include lib lib64 libexec sbin share src [root@centos6 local]# cp -rf /usr/local/etc* ./ #强制递归复制覆盖,不做交互式
mv 命令
简介: mv - move (rename) files
格式: mv [OPTION]... [-T] SOURCE DEST mv [OPTION]... SOURCE... DIRECTORY mv [OPTION]... -t DIRECTORY SOURCE...
选项: -f:强制 -i:交互式
实例1 [root@centos6 ~]# mv -f /testdir/local/etc /testdir/local/etc1 [root@centos6 ~]#
rm命令
简介: rm - remove files or directories
格式: rm [OPTION]... FILE...
选项: -i: 交互式 -f: 强制删除 -r: 递归 --no-preserve-root
实例1 [root@centos6 ~]# cd /testdir/local/ [root@centos6 local]# ls bin etc1 games include lib lib64 libexec sbin share src [root@centos6 local]# rm -rf etc1 #强制递归删除目录etc1,不做交互式提醒(建议:少用) [root@centos6 local]# ls bin games include lib lib64 libexec sbin share src [root@centos6 local]#
tree 命令
简介: tree - list contents of directories in a tree-like format.
格式: tree [options] [directory ...]
选项: -d: 只显示目录 -L level:指定显示的层级数目 -P pattern: 只显示由指定pattern匹配到的路径
实例1: [root@centos6 ~]# rpm -aq|grep tree #查看是否已安装tree命令 tree-1.5.3-3.el6.x86_64 [root@centos6 ~]# ls anaconda-ks.cfg file file2 install.log install.log.syslog test wget-log [root@centos6 ~]# tree #不加参数,直接对当前目录使用tree命令 . ├── anaconda-ks.cfg ├── file ├── file2 ├── install.log ├── install.log.syslog ├── test └── wget-log 1 directory, 6 files #root目录下有一个目录和六个普通文件 [root@centos6 ~]#
mkdir 命令
简介: mkdir - make directories
格式: mkdir [OPTION]... DIRECTORY...
选项: -p: 存在于不报错,且可自动创建所需的各目录 -v: 显示详细信息 -m MODE: 创建目录时直接指定权限
实例1: [root@centos6 testdir]# ls local [root@centos6 testdir]# mkdir -v test mkdir: created directory `test' [root@centos6 testdir]# ls local test [root@centos6 testdir]#
实例2: [root@centos6 testdir]# mkdir -pv /testdir/test/a/b/c/d mkdir: created directory `/testdir/test/a' mkdir: created directory `/testdir/test/a/b' mkdir: created directory `/testdir/test/a/b/c' mkdir: created directory `/testdir/test/a/b/c/d' [root@centos6 testdir]# tree -d /testdir/test/ /testdir/test/ └── a └── b └── c └── d 4 directories [root@centos6 testdir]#
实例3: [root@centos6 testdir]# mkdir test1 [root@centos6 testdir]# ls -ld test1 drwxr-xr-x 2 root root 4096 Aug 3 12:21 test1 #默认创建的目录权限为755 [root@centos6 testdir]# mkdir -m 444 test2 [root@centos6 testdir]# ls -ld test2 dr--r--r-- 2 root root 4096 Aug 3 12:22 test2 #设置创建test2目录的权限为444
rmdir 命令
简介: rmdir - remove empty directories
格式: rmdir [OPTION]... DIRECTORY...
选项: -p: 递归删除父空目录 -v: 显示详细信息
实例1 [root@centos6 ~]# mkdir -pv /testdir/test/a/b/c/d mkdir: created directory `/testdir/test' mkdir: created directory `/testdir/test/a' mkdir: created directory `/testdir/test/a/b' mkdir: created directory `/testdir/test/a/b/c' mkdir: created directory `/testdir/test/a/b/c/d' [root@centos6 ~]# rmdir -pv /testdir/test/a/b/c/d rmdir: removing directory, `/testdir/test/a/b/c/d' rmdir: removing directory, `/testdir/test/a/b/c' rmdir: removing directory, `/testdir/test/a/b' rmdir: removing directory, `/testdir/test/a' rmdir: removing directory, `/testdir/test' rmdir: removing directory, `/testdir' rmdir: failed to remove directory `/testdir': Directory not empty #因为testdir目录并非空目录,因此无法删除 [root@centos6 ~]# ll /testdir/ total 12 drwxr-xr-x 11 root root 4096 Aug 3 12:11 local drwxr-xr-x 2 root root 4096 Aug 3 12:21 test1 dr--r--r-- 2 root root 4096 Aug 3 12:22 test2 [root@centos6 ~]#
2、Linux中的通配符glob
通配符:*, ?, [] (1) * 任意长度的任意字符 a*b: 匹配:aab, ab, a123b, 非匹配:abc (2) ? 任意单个字符 a?b: 匹配aab 非匹配ab, a12b, abc (3) [] 匹配指定范围内的任意单个字符 [0-9]:数字0-9 [a-z]:不区分字符大小写,也就是a-z和A-Z (4) [^] 匹配指定范围外的任意单个字符 [^0-9]:非0-9的数字的任意单个字符
专用字符集合: [:digit:]:任意数字,相当于0-9 [:lower:]:任意小写字母 [:upper:]: 任意大写字母 [:alpha:]: 任意大小写字母 [:alnum:]:任意数字或字母 [:space:]:空格 [:punct:]:标点符号
原创文章,作者:Aleen,如若转载,请注明出处:http://www.178linux.com/27468
评论列表(1条)
写的很详细,总结的很好,对常见选项分析很到位