Linux入门—基础命令
目录
?日期命令date
?修改时区
?日历命令cal
?关机启动命令halt,reboot,poweroff
?whoami、who、who am i、w
?screen
?echo
?$的使用方法
?{}的使用方法
?Tab补齐
?History历史命令
日期命令date
Linux:系统启动,启动时从硬件读取时间 和日期信息,读取完毕后,与硬件无关
系统时钟
硬件时钟
date:系统时钟
显示日期时间:date [OPTION]... [+FORMAT]
format 格式符
%F full date; same as %Y-%m-%d
%T time; same as %H:%M:%S
%s seconds since 1970-01-01 00:00:00 UTC
+%Y 显示年份
+%m 显示月份
+%d 显示日
+%H 显示时
+%M 显示分
+%S 显示秒
+%w 显示周
设定日期时间:date [MMDDhhmm[[CC]YY][.ss]]
月 日 时 分 年 .秒
hwclock/clock 硬件时钟
显示或设置硬件时钟
-s:--hctosys
-w:--systohc
修改时区
时区文件位置:/usr/share/zoneinfo/
正在使用的时区:/etc/localtime
CentOS 6 :
ln -f /usr/share/zoneinfo/America/New_York /etc/localtime
ln -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
CentOS 7:
timedatectl 查看当前时区
timedatectl list-timezone 查看所有的时区
timedatectl set-timezone America/New_York 设置时区
timedatectl set-timezone Asia/Shanghai
日历命令cal
cal 显示当月日历
cal yyyy 显示指定年的日历
cal -y 显示当年的日历
cal -3 显示上个月当月下个月的日历
cal -1 同cal 显示当月日历
cal mm yyyy 显示指定年,月的日历
关机启动命令halt,reboot,poweroff
halt 或 poweroff 关机
centos7 : poweroff
reboot 重启
reboot -f 直接断电源再重启。
shutdown
shutdown –r(reboot) 重启
shutdown –h(halt) 关机
shutdown –c(cancel) 取消关机(在另一个终端执行)
shutdown +0 直接关机
shutdown +xx xx分钟后关机
shutdown hh:mm 指定时间关机
whoami、who、who am i、w
whoami 显示当前用户名
who am i 显示当前登录的终端信息
who 显示当前所有登录的终端信息
w 显示当前所有登录终端的详细信息
screen
我称它是隐藏进程,我们可以在一个进程里进行迭代开启进程,当我们的品目被关闭后,screen中的程序依然不会被打断。
screen 进入screen 名字以当前终端名.主机名前缀
screen -S screenname 设置screen名称并进入该隐藏进程
screen –x [SESSION] 加入screen会话
Ctrl+a,d 剥离当前screen会话(先按Ctrl+a,再按Ctrl+d)
screen -ls 或 --list 查看当前所有的screen
screen -r screenname 恢复某一个screen。
ctrl+d 或 exit 退出当前screen(会话)
echo
-n 不换行
-E (default) 不解释\
-e 解释\
\a 报警
\b 退格
\c 不换行
\n 换行,从行首输入
\r 移动行首但不换行
\t 输入tab
\\ 输入一个\
echo "$VAR_NAME”变量会替换,弱引用
echo ‘$VAR_NAME‘变量不会替换,强引用
$的使用方法
$变量名 引用变量的值
$()或` `引用命令执行的结果
$[]运算
${变量名} 或"$变量名" 当变量名的起止不分明时,用来划定变量名的范围,同时引用变量
{ }的使用方法
{a..z} 表示引用指定范围的字母
{1..9999} 表示引用指定范围的数字
{1,3,5} 表示分别引用每一个字符
touch du{1,2,3}.dudu
tab补齐
补齐:用于补齐命令或路径
\2TAB 把根下的所有文件列出
~2TAB 家目录下的所有文件列出
.2TAB 当前目录下的所有文件列出,包含隐藏文件
*2TAB 当前目录下的所有文件列出,不包含隐藏文件
$2TAB 显示当前所有的环境变量。
History历史命令
history [-c] [-d offset] [n]
history -anrw [filename]
history -ps arg [arg...]
-c: 清空命令历史
-doffset: 删除历史中指定的第offset个命令
n: 显示最近的n条历史
-a: 追加本次会话新执行的命令历史列表至历史文件
-n: 读历史文件中未读过的行到历史列表
-r: 读历史文件附加到历史列表
-w: 保存历史列表到指定的历史文件
-p: 展开历史参数成多行,但不存在历史列表中
-s: 展开历史参数成一行,附加在历史列表后
history显示当前终端的历史记录
!! 重复执行上一条命令
!-n 重复执行倒数第n条命令
!n 重复执行第n条命令
ctrl+p 等于向上方向键,翻出上一条命令。
ctrl+n 等于向下方向键,翻出下一条命令。
ctrl+j 等于enter 执行当前命令
!:0 执行前一条命令(去除参数)
!string 重复前一个以“string”开头的命令
!?string 重复前一个包含string的命令
!string:p 仅打印以string开头的命令历史,而不执行
!$:p 打印输出 !$ (上一条命令的最后一个参数)的内容
!*:p 打印输出 !*(上一条命令的所有参数)的内容
^string 删除上一条命令中的第一个string
^string1^string2 将上一条命令中的第一个string1替换为string2
!:gs/string1/string2 将上一条命令中所有的string1都替换为string2
ctrl-r来在命令历史中搜索命令
(reverse-i-search)`’:
Ctrl+g:从历史搜索模式退出
要重新调用前一个命令中最后一个参数:
!$表示
Esc, .(点击Esc键后松开,然后点击 . 键)
Alt+ .(按住Alt键的同时点击 . 键)
与命令历史相关的环境变量
HISTSIZE: 命令历史记录的条数
HISTFILE: 指定历史文件, 默认为~/.bash_history
HISTFILESIZE: 命令历史文件记录历史的条数
HISTTIMEFORMAT=“%F %T “ 显示时间
HISTIGNORE=“str1:str2: …”忽略string1.string2历史
控制命令历史的记录方法:HISTCONTROL
环境变量:
ignoredups默认 CONTROL , 忽略重复的命令, 连续且相同为“重复”
ignorespace 忽略所有以空白开头的命令
ignoreboth相当于ignoredups, ignorespace的组合
erasedups删除重复命令
存放在/etc/profile 或 ~/.bash_profile
其他使用方法
command !^ : 利用上一个命令的第一个参数做cmd的参数
command !$ : 利用上一个命令的最后一个参数做cmd的参数
command !* : 利用上一个命令的全部参数做cmd的参数
command !:n : 利用上一个命令的第n个参数做cmd的参数
command !n:^ 调用第n条命令的第一个参数
command !n:$ 调用第n条命令的最后一个参数
command !n:m 调用第n条命令的第m个参数
command !n:* 调用第n条命令的所有参数
command !string:^ 从命令历史中搜索以 string 开头的命令,并获取它的第一个参数
command !string:$ 从命令历史中搜索以 string 开头的命令,并获取它的最后一个参数
command !string:n 从命令历史中搜索以 string 开头的命令,并获取它的第n个参数
command !string:* 从命令历史中搜索以 string 开头的命令,并获取它的所有参数