Linux的基本语法

本文介绍了Bashshell中一系列命令的使用方法,包括查看shell内置命令、管理用户密码、查看时间日期、设置时区、重启时间服务等,展示了Linux系统管理的基本操作。
摘要由CSDN通过智能技术生成

[root@haha2 /]# cat  /etc/shells  查看文件

[root@haha2 /]# help     查看内置命令有哪些 
GNU bash,版本 5.1.8(1)-release (x86_64-redhat-linux-gnu)
这些 shell 命令是内部定义的。请输入 `help' 以获取一个列表。
输入 `help 名称' 以得到有关函数`名称'的更多信息。
使用 `info bash' 来获得关于 shell 的更多一般性信息。
使用 `man -k' 或 `info' 来获取不在列表中的命令的更多信息。

名称旁边的星号(*)表示该命令被禁用。

 job_spec [&]                                        history [-c] [-d 偏移量] [n] 或 history -anrw >
 (( 表达式 ))                                        if 命令; then 命令; [ elif 命令; then 命令; ]...>
 . 文件名 [参数]                                     jobs [-lnprs] [任务声明 ...] 或 jobs -x 命令 [>
 :                                                   kill [-s 信号声明 | -n 信号编号 | -信号声明] >
 [ 参数... ]                                         let 参数 [参数 ...]
 [[ 表达式 ]]                                        local [option] 名称[=值] ...
 alias [-p] [名称[=值] ... ]                         logout [n]
 bg [任务声明 ...]                                   mapfile [-d 分隔符] [-n 计数] [-O 起始序号] [-s>
 bind [-lpvsPSVX] [-m 键映射] [-f 文件名] [-q 名称>  popd [-n] [+N | -N]
 break [n]                                           printf [-v var] 格式 [参数]
 builtin [shell 内建 [参数 ...]]                     pushd [-n] [+N | -N | 目录]
 caller [表达式]                                     pwd [-LP]
 case 词 in [模式 [| 模式]...) 命令 ;;]... esac      read [-ers] [-a 数组] [-d 分隔符] [-i 缓冲区文字>
 cd [-L|[-P [-e]] [-@]] [目录]                       readarray [-d 定界符] [-n 计数] [-O 起始序号] [->
 command [-pVv] 命令 [参数 ...]                      readonly [-aAf] [名称[=值] ...] 或 readonly -p
 compgen [-abcdefgjksuv] [-o option] [-A action] [>  return [n]
 complete [-abcdefgjksuv] [-pr] [-DEI] [-o option]>  select NAME [in 词语 ... ;] do 命令; done
 compopt [-o|+o 选项] [-DEI] [名称 ...]              set [--abefhkmnptuvxBCHP] [-o 选项名] [--] [参数>
 continue [n]                                        shift [n]
 coproc [名称] 命令 [重定向]                         shopt [-pqsu] [-o] [选项名 ...]
 declare [-aAfFgiIlnrtux] [-p] [name[=value] ...]    source 文件名 [参数]
 dirs [-clpv] [+N] [-N]                              suspend [-f]
 disown [-h] [-ar] [任务声明 ... | pid ...]          test [表达式]
 echo [-neE] [参数 ...]                              time [-p] 管道
 enable [-a] [-dnps] [-f 文件名] [名称 ...]          times
 eval [参数 ...]                                     trap [-lp] [[参数] 信号声明 ...]
 exec [-cl] [-a name] [command [argument ...]] [re>  true
 exit [n]                                            type [-afptP] 名称 [名称 ...]
 export [-fn] [名称[=值] ...] 或 export -p           typeset [-aAfFgiIlnrtux] [-p] name[=value] ...
 false                                               ulimit [-SHabcdefiklmnpqrstuvxPT] [限制]
 fc [-e 编辑器名] [-lnr] [起始] [终结] 或 fc -s [>  umask [-p] [-S] [模式]
 fg [任务声明]                                       unalias [-a] 名称 [名称 ...]
 for 名称 [in 词语 ... ] ; do 命令; done             unset [-f] [-v] [-n] [名称 ...]
 for (( 表达式1; 表达式2; 表达式3 )); do 命令; don>  until 命令; do 命令; done
 function 名称 { 命令 ; } 或 name () { 命令 ; }      variables - 一些 shell 变量的名称和含义
 getopts optstring name [arg ...]                    wait [-fn] [-p var] [id ...]
 hash [-lr] [-p 路径名] [-dt] [名称 ...]             while 命令; do 命令; done
 help [-dms] [模式 ...]                              { 命令 ; }

[root@haha2 /]# type -a su
su 是 /usr/bin/su    查看文件是内部命令还是外部命令

[root@haha2 /]# passwd -d xiongzheng
清除用户的密码 xiongzheng。
passwd: 操作成功 

[root@haha2 /]# passwd xiongzheng
更改用户 xiongzheng 的密码 。
新的密码: 
无效的密码: 密码少于 8 个字符
重新输入新的密码: 

[root@haha2 /]# date  查看时间日期
2024年 03月 31日 星期日 19:34:39 CST

[root@haha2 /]# date --help   获取更多指令信息
用法:date [选项]... [+格式]
 或:date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
以给定<格式>字符串的形式显示当前时间,或者设置系统日期。

必选参数对长短选项同时适用。
  -d, --date=字符串          显示给定<字符串>描述的时间,而非“当前时间”
      --debug                对解析的日期添加注释,
                              对不规范的使用方式进行警告,并输出警告信息到
                              标准错误
  -f, --file=日期文件        类似 --date;使用给定<日期文件>,一次处理一行
  -I[FMT], --iso-8601[=FMT]  以 ISO 8601 格式输出日期/时间。
                               FMT='date' 时只输出日期(默认行为),
                               当其为 'hours'、'minutes'、'seconds' 或 'ns' 时
                               则按照所指示的精确度显示日期和时间。
                               示例:2006-08-14T02:34:56-06:00
  -R, --rfc-email            以 RFC 5322 格式输出日期和时间。
                               例如:Mon, 14 Aug 2006 02:34:56 -0600
      --rfc-3339=格式        以 RFC 3339 格式输出日期/时间。
                               <格式>字符串可以是'date'、'seconds' 或 'ns',
                               用于指定日期和时间显示的精确度。
                               例如:2006-08-14 02:34:56-06:00
  -r, --reference=文件       显示指定<文件>的最后修改时间
  -s, --set=字符串           按照给定<字符串>描述的时间来设置时间
  -u, --utc, --universal     按照协调世界时(UTC)显示或设置时间
      --help        显示此帮助信息并退出
      --version        显示版本信息并退出

给定的格式FORMAT 控制着输出,解释序列如下:

  %%    一个文字的 %
  %a    当前locale 的星期名缩写(例如: 日,代表星期日)
  %A    当前locale 的星期名全称 (如:星期日)
  %b    当前locale 的月名缩写 (如:一,代表一月)
  %B    当前locale 的月名全称 (如:一月)
  %c    当前locale 的日期和时间 (如:2005年3月3日 星期四 23:05:25)
  %C    世纪;比如 %Y,通常为省略当前年份的后两位数字(例如:20)
  %d    按月计的日期(例如:01)
  %D    按月计的日期;等于%m/%d/%y
  %e    按月计的日期,添加空格,等于%_d
  %F   完整日期格式,等价于 %+4Y-%m-%d
  %g   ISO-8601 格式年份的最后两位(参见 %G)
  %G   ISO-8601 格式年份(参见 %V),一般只和 %V 结合使用
  %h    等于%b
  %H    小时(00-23)
  %I    小时(00-12)
  %j    按年计的日期(001-366)
  %k   小时,空格补充空白位( 0..23);与 %_H 相同
  %l   小时,空格补充空白位( 1..12);与 %_I 相同
  %m   月份(01..12)
  %M   分钟(00..59)
  %n   换行
  %N   纳秒(000000000..999999999)
  %p   当前地区时间设置中 AM 或 PM 的等效值(“上午”或“下午”),未知则为空
  %P   类似 %p,但使用小写
  %q   一年中的季度(1..4)
  %r   当前地区时间中十二小时制钟表时间(例如,下午 11时11分04秒)
  %R   24 小时制的时间和分钟;和 %H:%M 相同
  %s   1970-01-01 00:00:00 UTC 以来的秒数
  %S    秒(00-60)
  %t    输出制表符 Tab
  %T    时间,等于%H:%M:%S
  %u    星期,1 代表星期一
  %U    一年中的第几周,以周日为每星期第一天(00-53)
  %V    ISO-8601 格式规范下的一年中第几周,以周一为每星期第一天(01-53)
  %w    一星期中的第几日(0-6),0 代表周一
  %W    一年中的第几周,以周一为每星期第一天(00-53)
  %x    当前locale 下的日期描述 (如:12/31/99)
  %X    当前locale 下的时间描述 (如:23:13:48)
  %y    年份最后两位数位 (00-99)
  %Y    年份
  %z +hhmm        数字时区(例如,-0400)
  %:z +hh:mm        数字时区(例如,-04:00)
  %::z +hh:mm:ss    数字时区(例如,-04:00:00)
  %:::z            数字时区带有必要的精度 (例如,-04,+05:30)
  %Z            按字母表排序的时区缩写 (例如,EDT)

默认情况下,日期的数字区域以0 填充。
以下可选标记可以跟在"%"后:

  -  (连字符)不填充该域
  _  (下划线)以空格填充
  0  (数字0)以 0 填充
  +  以零填充,并且在大于四个数位的未来年份之前放置 '+' 符号
  ^  如果可能,使用大写字母
  #  如果可能,使用相反的大小写

在任何标记之后还允许一个可选的域宽度指定,它是一个十进制数字。
作为一个可选的修饰声明,它可以是E,在可能的情况下使用本地环境关联的
表示方式;或者是O,在可能的情况下使用本地环境关联的数字符号。

示例:
将 epoch(1970-01-01 UTC)以来的秒数转换为日期
  $ date --date='@2147483647'

显示美国东海岸的当前时间(请使用 tzselect(1) 来查询 TZ 的具体数值)
  $ TZ='America/Los_Angeles' date

显示美国东海岸下一个星期五当地时间早上九点
  $ date --date='TZ="America/Los_Angeles" 09:00 next Fri'

GNU coreutils 在线帮助:<https://www.gnu.org/software/coreutils/>
请向 <http://translationproject.org/team/zh_CN.html> 报告任何翻译错误
完整文档 <https://www.gnu.org/software/coreutils/date>
或者在本地使用:info '(coreutils) date invocation'
[root@haha2 /]# date +%j  
091
[root@haha2 /]# timedatectl 查看时间表
               Local time: 日 2024-03-31 19:39:55 CST
           Universal time: 日 2024-03-31 11:39:55 UTC
                 RTC time: 日 2024-03-31 11:39:55
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes   
[root@haha2 /]# systemctl restart chronyd.service  重启时间服务器
[root@haha2 /]# timemctcl status chronyd . service 

[root@haha2 /]# timedatectl set-timezone Asia/Shanghai 同步时区

[root@haha2 /]# timedatectl set-timezone Asia/Shanghai  同步硬件时间
[root@haha2 /]# timedatectl set-local-rtc true
[root@haha2 /]# timedatectl
               Local time: 日 2024-03-31 19:47:34 CST
           Universal time: 日 2024-03-31 11:47:34 UTC
                 RTC time: 日 2024-03-31 19:47:34
                Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
              NTP service: active
[root@haha2 ~]# ll 查看文件
总用量 4
drwxr-xr-x. 2 root root    6  3月 29 14:17 公共
drwxr-xr-x. 2 root root    6  3月 29 14:17 模板
drwxr-xr-x. 2 root root    6  3月 29 14:17 视频
drwxr-xr-x. 2 root root    6  3月 29 14:17 图片
drwxr-xr-x. 2 root root    6  3月 29 14:17 文档
drwxr-xr-x. 2 root root    6  3月 29 14:17 下载
drwxr-xr-x. 2 root root    6  3月 29 14:17 音乐
drwxr-xr-x. 2 root root    6  3月 29 14:17 桌面
-rw-------. 1 root root 1021  3月 28 17:05 anaconda-ks.cfg
[root@haha2 ~]# ls -l 查看文件
总用量 4
drwxr-xr-x. 2 root root    6  3月 29 14:17 公共
drwxr-xr-x. 2 root root    6  3月 29 14:17 模板
drwxr-xr-x. 2 root root    6  3月 29 14:17 视频
drwxr-xr-x. 2 root root    6  3月 29 14:17 图片
drwxr-xr-x. 2 root root    6  3月 29 14:17 文档
drwxr-xr-x. 2 root root    6  3月 29 14:17 下载
drwxr-xr-x. 2 root root    6  3月 29 14:17 音乐
drwxr-xr-x. 2 root root    6  3月 29 14:17 桌面
-rw-------. 1 root root 1021  3月 28 17:05 anaconda-ks.cfg
[root@haha2 ~]# find / -type c 查看系统有哪些字符设备文件


 

  • 4
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值