Linux基础命令(详细版)
本博文包含以下命令的使用方法:
locale命令(语言相关):查询: [[email?protected] ~]# locale #查询系统语言 LANG=zh_CN.UTF-8 #语言语系输出 LC_CTYPE="zh_CN.UTF-8" #输出使用语系类型 LC_NUMERIC="zh_CN.UTF-8" #数字方面语系数据 LC_TIME="zh_CN.UTF-8" #时间方面语系数据 LC_COLLATE="zh_CN.UTF-8" #校验方面 LC_MONETARY="zh_CN.UTF-8" #货币方面 LC_MESSAGES="zh_CN.UTF-8" #信息方面 LC_PAPER="zh_CN.UTF-8" #文件方面 LC_NAME="zh_CN.UTF-8" #命名方面 LC_ADDRESS="zh_CN.UTF-8" #路径方面 LC_TELEPHONE="zh_CN.UTF-8" #电话方面 LC_MEASUREMENT="zh_CN.UTF-8" #测量方面 LC_IDENTIFICATION="zh_CN.UTF-8" #×××明方面 LC_ALL= #全部的数据同步更新的设置值 修改系统语言举例: [[email?protected] ~]# LANG=en_US.utf8 #修改为英文 [[email?protected] ~]# export LC_ALL=en_US.utf8 #输出到所有语言类型 [[email?protected] ~]# locale #查看是否更改成功 LANG=en_US.utf8 LC_CTYPE="en_US.utf8" LC_NUMERIC="en_US.utf8" LC_TIME="en_US.utf8" LC_COLLATE="en_US.utf8" LC_MONETARY="en_US.utf8" LC_MESSAGES="en_US.utf8" LC_PAPER="en_US.utf8" LC_NAME="en_US.utf8" LC_ADDRESS="en_US.utf8" LC_TELEPHONE="en_US.utf8" LC_MEASUREMENT="en_US.utf8" LC_IDENTIFICATION="en_US.utf8" LC_ALL=en_US.utf8 [[email?protected] ~]# date #查询日期,看到如下,说明更改成功 Tue Aug 6 12:38:35 CST 2019 [[email?protected] ~]# LANG=zh_CN.utf8 #再改回来吧 [[email?protected] ~]# export LC_ALL=zh_CN.utf8 [[email?protected] ~]# date #再查看日期 2019年 08月 06日 星期二 12:39:43 CST date命令(日期相关)[[email?protected] ~]# date #查看时间 2019年 08月 06日 星期二 12:39:43 CST [[email?protected] ~]# date -s "2018-05-17 09:51:50" #更改为指定时间 2018年 05月 17日 星期四 09:51:50 CST [[email?protected] ~]# date #查看是否更改成功 2018年 05月 17日 星期四 09:51:53 CST [[email?protected] ~]# hwclock –w #将当前系统时间写入BIOS中 cal命令(日历)1、命令格式:
3、命令功能: 4、使用实例: [[email?protected] ~]# cal #显示当前月份日历 八月 2019 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 [[email?protected] ~]# cal 9 2019 #显示指定月份日历 九月 2019 日 一 二 三 四 五 六 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 [[email?protected] ~]# cal -y 2013 #显示2013年日历 2013 ............................ [[email?protected] ~]# cal -j #显示自1月1日的天数 八月 2019 日 一 二 三 四 五 六 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 [[email?protected] ~]# cal -m #星期一显示在第一列 八月 2019 一 二 三 四 五 六 日 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 bc计算机1、各种算法的符号:
2、使用方法: [[email?protected] ~]# bc #进入计算机环境 bc 1.06.95 Copyright 1991-1994,1997,1998,2000,2004,2 Inc. This is free software with ABSOLUTELY NO WANTY. For details type `warranty‘. 1*5 #直接进行运算即可,按回车键得到运算结果 5 Ctrl+C退出计算机环境 --help命令(命令帮助)与man命令功能一样,为我们提供一个命令的使用方法。 1、使用方法: [[email?protected] ~]# date --help Usage: date [OPTION]... [+FORMAT] #date命令的基本语法 or: date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] Display the current time in the given FORMAT,or set the system date. #下面是主要的选项说明 Mandatory arguments to long options are mandatory for short options too. -d,--date=STRING display time described by STRING,not ‘now‘ -f,--file=DATEFILE like --date once for each line of DATEFILE ...............................#省略部分内容 #下面是可以定义内容输出的格式 FORMAT controls the output. Interpreted sequences are: %% a literal % %a locale‘s abbreviated weekday name (e.g.,Sun) %A locale‘s full weekday name (e.g.,Sunday) ...............................#省略部分内容 #下面是几个常用的范例 Examples: Convert seconds since the epoch (1970-01-01 UTC) to a date $ date --date=‘@2147483647‘ ...............................#省略部分内容 man命令(man手册帮助)和--help作用一样。 1、使用方法: [[email?protected] ~]# man date #执行后将进入man环境 DATE(1) User Commands DATE(1) #请注意上面的数字,(1)是命令代号,稍后解释命令代号。 NAME #这个指令的完整全名,如下所示 date - print or set the system date and time SYNOPSIS #这个指令的基本语法如下: date [OPTION]... [+FORMAT] #第一种只是显示的用法 date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]] #上面这种是可以设置系统时间的用法 DESCRIPTION #详细说明选项和参数的用法 Display the current time in the given FORMAT,or set the system date. Mandatory arguments to long options are mandatory for short options too. -d,--date=STRING #-d是短选项名称,-date为完整选项名称 display time described by STRING,not ‘now‘ -f,--file=DATEFILE ...............................#省略部分内容 #下面是格式化输出的详细数据 FORMAT controls the output. Interpreted sequences are: ...............................#省略部分内容 2、在man手册的命令代号含义如下(其中1、5、8是需要牢记的,其他了解即可): 3、在man手册中一些代号的的含义: 4、man手册环境中的一些操作按键: cd命令(切换目录)1、特殊符号代表的含义:
2、用法举例: [[email?protected] ~]# cd ~lv #切换至用户“lv”的宿主目录 [[email?protected] lv]# pwd #查看是否在指定位置下 /home/lv [[email?protected] lv]# cd .. #切换至上一层工作目录 [[email?protected] home]# pwd #查看 /home [[email?protected] home]# cd ./lv #切换至当前目录下的“lv”目录,一般直接“cd lv”即可。 [[email?protected] lv]# pwd #查看 /home/lv pwd(显示当前工作路径)在上面的cd命令介绍中,已经使用了pwd命令,相信明白pwd命令的作用了,主要是这个命令还有一个选项,也就是“-P”。 [[email?protected] lv]# cd /var/mail/ #切换到一个链接目录下 [[email?protected] mail]# pwd #查询当前工作路径 /var/mail [[email?protected] mail]# pwd -P #加“-P”再查看下,发现路径不一样 /var/spool/mail 在上面的例子中,因为/var/mail是一个链接文件,链接到/var/spool/mail下的,加上“-P”选项后,会显示正确的完整路径,而不是以链接文件的属性显示。 mkdir(创建目录)1、命令选项:
2、-m选项用法举例: [[email?protected] ~]# mkdir -m 777 /test1/ #创建目录,并指定权限为777 [[email?protected] ~]# ls -ld /test1/ #查看目录属性 drwxrwxrwx 2 root root 6 Aug 6 14:08 /test1/ #可以看到目录创建后的权限就是创建时指定的权限。 3、-p、-v选项用法举例: [[email?protected] ~]# mkdir -pv /t1/t2/t3 #使用“-p”创建多层目录 mkdir: created directory ‘/t1’ mkdir: created directory ‘/t1/t2’ mkdir: created directory ‘/t1/t2/t3’ #会输出创建成功的信息,这就是“-v”选项的作用,一般不用“-v”选项 rmdir(删除空目录)1、命令选项:
2、用法示例: [[email?protected] ~]# rmdir /test1/ #删除刚才创建的空目录test1 [[email?protected] ~]# tree /t1 #查看目录结构 /t1 `-- t2 `-- t3 2 directories,0 files #可以确认都是空目录,tree命令需要手动安装,这里不过多介绍。 [[email?protected] /]# rmdir -p t1/t2/t3/ #加上“-p”选项 [[email?protected] /]# tree /t1 #查看目录结构,确认已经被删除了 t1 [error opening dir] 0 directories,0 files 需要放心的是,rmdir只能删除空目录,加上“-p”选项后,若上层目录不是空的,将跳过。 ls(查看目录下内容)1、命令选项:
关于上面提到的文件属性:ctime、mtime、atime的解释如下:
2、用法示例: [[email?protected] ~]# ls -alF --color=never #不指定路径,则默认查看当前目录下 输出结果如下: 可以看到输出结果只有一种颜色。 [[email?protected] ~]# ls -alF #去掉命令末尾的“--color”再查看一下 输出结果如下: 在Linux中关于各种颜色的代表含义(使用Xshell等连接可能会不一样):
[[email?protected] ~]# ls -al --full-time 输出结果如下: “-al”选项只能列出简单的时间,借助“--full-time”可以列出完整的时间格式。 cp(复制)1、命令选项:
2、用法示例: [[email?protected] ~]# cp -r /etc/ /tmp #将“/etc/”复制到“/tmp”目录下。 rm(删除)1、命令选项:
2、用法示例: [[email?protected] tmp]# rm -r vmware-root/ #删除该目录 rm: remove directory ‘vmware-root/’? y #输入“y”确定 mv(移动文件或目录、重命名)mv命令用于将指定的文件或目录转移位置,如果目标位置与原位置相同,则效果相当于为文件或目录改名。
2、用法示例: [[email?protected] tmp]# mv test1 test2 #将test1改名为test2 [[email?protected] tmp]# mv test2 /home #将test2移动到home目录下 cat、head、tail等命令要把我写哭了,真的没耐心写下去了,关于cat、head、tail命令可以查看我最初写的博客:Linux中如何查看文件内容,不写了这个了。 touch命令(创建文件或目录)touch这个命令最常用的的情况是:
可以看出来,touch命令不仅仅可以创建文件或目录。 1、常用选项:
2、用法示例: [[email?protected] tmp]# touch test #先新建一个空文件 [[email?protected] tmp]# ls -l test #观察时间 -rw-r--r-- 1 root root 0 Aug 6 16:01 test #可以看到这个文件大小是0,在默认的状态下,如果touch后面有接文件, #则该文件的三个时间(atime/ctime/mtime)都会更新为目前的时间。 #若该文件不存在,则会主动创建一个新的空文件。 [[email?protected] tmp]# cp -a ~/.bashrc bashrc #将 ~/.bashrc复制到当前目录下,并命名为bashrc。 [[email?protected] tmp]# date; ll bashrc; ll --time=atime bashrc; ll --time=ctime bashrc #查看该文件的各种时间及日期的属性 Tue Aug 6 16:05:36 CST 2019 #这是当前时间 -rw-r--r--. 1 root root 176 Dec 29 2013 bashrc #这是mtime -rw-r--r--. 1 root root 176 Aug 6 12:14 bashrc #这是atime -rw-r--r--. 1 root root 176 Aug 6 16:04 bashrc #这是ctime [[email?protected] tmp]# touch -d "4 days ago" bashrc #将文件日期调整到四天前 [[email?protected] tmp]# date; ll bashrc; ll --time=atime bashrc; ll --time=ctime bashrc Tue Aug 6 16:11:22 CST 2019 #再查看各种时间 -rw-r--r--. 1 root root 176 Aug 2 16:11 bashrc -rw-r--r--. 1 root root 176 Aug 2 16:11 bashrc -rw-r--r--. 1 root root 176 Aug 6 16:11 bashrc #会发现除了ctime之外,都改变了, #ctime只有在文件属性发生改变后,才可以改变。 [[email?protected] tmp]# touch -t 201406150202 bashrc #将该文件的日期改为2014/06/15 2:02 [[email?protected] tmp]# date; ll bashrc; ll --time=atime bashrc; ll --time=ctime bashrc Tue Aug 6 16:15:46 CST 2019 -rw-r--r--. 1 root root 176 Jun 15 2014 bashrc -rw-r--r--. 1 root root 176 Jun 15 2014 bashrc -rw-r--r--. 1 root root 176 Aug 6 16:15 bashrc #还是除了ctime之外,都改变了。 find命令(查找)grep命令(过滤)———————— 本文至此结束,感谢阅读 ———————— (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |