欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux基础命令知识

程序员文章站 2022-06-25 13:48:12
命令 1.tty (查看登录平台数量及用户) 2.who (查看当前平台及用户) -r(同3) 3.runlevel (查看当前运行级别) 4.whoami (当前登录用户) * 5.init3/5(切换字符/图形界面) 0/6(关机/重启“同16”) * 6.lsblk (查看磁盘,块设备) 7. ......
Linux基础命令知识
 
 
 
 
 
命令
1.tty (查看登录平台数量及用户)
2.who (查看当前平台及用户) -r(同3)
3.runlevel (查看当前运行级别)
4.whoami (当前登录用户) *
5.init3/5(切换字符/图形界面) 0/6(关机/重启“同16”) *
6.lsblk (查看磁盘,块设备)
7.free (查看内存) -m/g(以MB/GB为单位) *
8.nano (修改文本)
9.ifconfig (查看网络设备) ******* 1
10.ls (显示目标列表) *
11.ll (显示当前目标详细文件) *
12.cat (查看文本文件) *
13.rz (批量上传文件到linux服务器“不能上传文件夹”) *
14.sz (批量上传文件到windows服务器) *
15.cp (复制一个或多个文件到目录目标) *
16.reboot(重启)
17.pwd (显示当前用户工作目录绝对路径) *
18.echo(显示文字) ${A}123 (前提A=某个数) *
19.enable (查看内部命令) -n XXX (查看禁用的XXX内部命令)
20.exit (退出当前用户)
21.logout (注销当前用户)
22.rm -rf(删除文件或目录) *
23.type (判断是内部命令还是外部命令)
24.hash (打开缓存表) -r XX (清除XX缓存记录) -r (清除所有缓存)-p /xx X ("/xx"命 令路径起别名为X)
25.cd XXX (进入XXX目录) *
26.alias (查看别名) XX=“YY” (定义“YY”的别名)
27.unalias YY(取消"YY"的别名) -a(取消所有的别名)
28.date (查看系统时间) xxxxxx.Y (修改月日时分年Y秒)或 date -s '2020-1-5 12:30:50' (修改时间) *
29.clock (主板时间) -s (覆盖系统时间) -w(覆盖主板时间)
30.date +%Y-%m-%d-%H-%M-%S(显示系统时间格式 年-月-日-时-分-秒) "+%F %T"(%F显示年月日 %T显示时分秒) *
31.date -d@距离秒数 “+%Y-%M-%D-%s-%m-%s” *
32.reset (重置,复位)
33.shutdown (关机) -r (重启“同16”) -h +xx (xx分钟后关机)
34.ifconfig (显示或配置网络设备) *
35.screen -S XX(创建会话XX) -x XX(加入会话XX)
36.cal (查看日历) XXX 查看(查看XXX年日历) Y XXX (查看XXX年Y月日历)
37.touch (创建文件) *
38.history (查看当前历史记录) !XX(执行某条历史记录)-a (清空命令历史) -d XX (删除第XX条的命令) *
39.rpm -ivh (显示安装过程和套件相关信息) XXX(安装XXX目录后缀为RPM的文件) *
40.mount XXX YYYY(挂载XXX目录下的光盘到YYY目录下) *
41.df (查看已加载的光盘) *
42.which XXX (查看XXX命令路径) *
43.gedit (图形编辑工具)
44.useradd XXX (创建一个XXX的用户) *
45.su XXX (切换到XXX的用户) *
49.halt:关闭系统 -p(关闭系统并关闭电源) -d(关闭系统,但不留下纪录)
50.hwclock
51.info:在info后面输入命令的名称就可以查看该命令的info帮助文档了:
53.mandb:linux自带的帮助文档mandb
53.makewhatis
55.poweroff:当需要系统关闭电源时,内核调用用户空间的/sbin/poweroff命令来完成。
56.screen:Screen是一个可以在多个进程之间多路复用一个物理终端的窗口管理器,这意味着你能够使用一个单一的终端窗口运行多终端的应用
57.shutdown:关机
58.tree:执行tree指令,它会列出指定目录下的所有文件,包括子目录里的文件。
60.whatis
61.whoami:显示登录名whoami 命令在有 root 用户权限时也有效,因为它不检查 /etc/utmp 文件。显示计算名和用户
62.who am i
63.w:打印当前系统活动摘要。
64.wc:计算器
 
 
bytes
bits
8bits = 1 Bytes
 
100M
B 1024Bytes=1KB
KB 1024KB=1M
MB 1024MB=1GB
GB 1024GB=1TB
TB 1024TB=1PB
PB 1024PB=1EB
 
把十进制转化为二进制
bc
obase=2
192
11000000
二进制转化为十进制
bc
ibase=2
1010101
85
 
虚拟机当中释放鼠标 Ctrl + ALT
在安装环境中输入 ctrl + alt +f2
 
centos5及之前
hda:ida
sda:scsi、sata、sas、usb
centos6及之后
sda:
vda: 虚拟机
xvda: 虚拟机
一切皆文件
 
XShell、SecureCrt、Putty
Shell是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。
它接收用户输入的命令并把它送入内核去执行
shell也被称为LINUX的命令解释器
Shell:人机交互的语言
GUI:Gnome、KDE、Windows、IOS、Android
CLI:Dos、cmd、powershell、sh、
 
cat:查看文件内容
[root@centos6 ~]# cat /etc/shells 查看当前系统所安装的shell
[root@centos6 ~]# echo $SHELL 查看当前使用的何种shell
 
which 查看命令的路径
who am i 和 who 和whoami 的区别
Linux基础命令知识
 
enableenable既可以查看内部命令,同时也可以判断是否为内部命领
-n 查看所有已禁用的内部命令
-a 查看所有的内部命令
enable command 启用指定的内部命令
enable -n command 禁用指定的内部命令
配合 | wc -l 可查看数量
[root@linuxeye ~]# enable -a #查看内部命令
[root@linuxeye ~]# enable whiptail #非内部命令
-bash: enable: whiptail: not a shell builtin
[root@linuxeye ~]# enable pwd #是内部命令
 
命令提示符
例如: PS1="[\[\e[32m\]\u\[\e[36m\]@\h_v6\[\e[31m\]\[\e[0m\] \W]\$ "
[root@localhost ~]#
# 管理员 $ 普通用户
显示提示符格式1:[root@localhost ~]#echo $PS1
修改提示符格式2 PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
\e \033 \u 当前用户 \h 主机名简称 \H 主机名 \w 当前工作目录 \W 当前工目录基名 \t 24小时时间格式 \T 12小时时间格式 \! 命令历史数 \# 开机 后命令历史行
每个用户都有默认shell设定;
查看当前shell种类:
~]# echo $SHELL
$SHELL:是环境变量
 
在shell中可执行的命令有两类
 
内部命令: 由shell自带的,而且通过某命令形式提供
help 内部命令列表
enable cmd 启用内部命令
enable –n cmd 禁用内部命令
enable –n 查看所有禁用的内部命令
外部命令: 在文件系统路径下有对应的可执行程序文件
查看路径:which -a |--skip-alias ; whereis
区别指定的命令是内部或外部命令 type COMMAND
命令执行的优先顺序 : alias > 内部 > 外部(hash > PATH)
 
hash缓存表
系统初始hash表为空,当外部命令执行时,默认会从PATH路径 ($PATH)下寻找该命令,找到后会将这条命令的路径记录到hash表中,当再次使用该命令时,shell解
释器首先会查看hash表,存在将执行之,如果不存在,将会去PATH路径下寻找。
利用hash缓存表可大大提高命令的调用速率
 
Linux基础命令知识
 
hash常见用法
hash 显示hash缓存
hash –l 显示hash缓存,可作为输入使用
hash –p path name 将命令全路径path起别名为name
hash –t name 打印缓存中name的路径
hash –d name 清除name缓存
hash –r 清除缓存
 
命令别名nano .bashrc 定义别名 vim ~/.bashrc
alias grep='grep --clock=auto'
alias 显示当前shell进程所有可用的命令别名,在命令行中定义的别名,仅
对当前shell进程有效 ,如果想永久有效,要定义在配置文件中
仅对当前用户:~/.bashrc
对所有用户有效 :/etc/bashrc
alias copy=cp
alias copy='cp -p -r'
alias 查看别名
unalias 别名名字
unalias -a 取消所有别名
写入~/.bashrc
gedit ~/.bashrc
临时使某条命令不受别名影响
1.路径执行命令
如:/bin/ls
2.\ls
3.'ls'
命令的格式 :command option arguments
options 选项 启用命令的某项功能,从而更改命令的功能
arguments 参数 改变命令作用的对象
短选项
-c
-ca = -c -a
长选项
--word
 
type :查看命令种类
如果是内嵌命令,直接显示为内嵌;
如果是外部命令,显示命令的绝对路径;
例如:
~]# type ls
~]# type cd
~]# type type
 
date : date (查看系统时间) xxxxxx.Y (修改月日时分年Y秒)或 date -s
.clock (主板时间) -s (覆盖系统时间) -w(覆盖主板时间)
日期相关的命令:date,hwclock(clock),cal
硬件时钟:由电池供电,硬件计时;
系统时钟:系统启动时,从硬件时钟读取并设定其时间;内核时钟;
ntp:net time protocol网络时间协议
[root@centos6 ~]# date "+%Y年%m月%d日 %H时%M分%S秒 星期2"
2018年05月15日 15时59分43秒 星期2
[root@centos6 ~]# date "+%F %T" 年月日时分秒
2018-05-15 16:00:07
[root@centos6 ~]# date +%s
1526371345
[root@centos6 ~]# date 100112202019.20 月日时分[年][.秒]
Tue Oct 1 12:20:20 CST 2019
[root@centos6 ~]# date -s '2020-1-5 12:30:50'
Sun Jan 5 12:30:50 CST 2020
[root@instructor_v7(nanyibo) ~]# date -d '-2 days' +%A 表示前天是星期几
 
FORMAT:格式说明
%F:日期,显示为数字,格式为:2016-03-02;
%D:显示英制格式,月日年,显示格式为:03/02/16;
%T:时间,显示为数字,格式为:15:52:16;
%Y:年份,只显示完整年份数字(4位数字)显为:2016
%y:显示年份的后两位,显示格式为:16;
%m:月份,只显示数字,显示格式为:03;
%d:日期,只显示数字,显示格式为:02;
%H:小时,只显示数字,显示格式为(00..23):15;
%k:小时,显示格式为(0..23);
%I:小时,格式为(01..12);
%l:小时,显示格式为(1..12);
%h:显示月份,显示格式为:3月;
%M:分钟,只显示数字,显示格式为:52;
%S:秒钟,只显示数字,显示格式为:16;
%a:缩写星期;
%A:完整星期;
%b:缩写月份;
%B:完整月份;
%r:显示格式为(11:11:04 PM);
%R:同%H%M,格式为(23:37)
%s:从1970年1月1日至此刻所经历的秒数;timestamp; 显示格式为:1456905397;
 
设定日期时间格式:[月月日日时时分分[[年年]年年][.秒秒]];
hwclock命令:硬件时钟
-s, --hctosys:以硬件时间为准;设定系统时间;
-w, --systohc:以系统时间为准;设定硬件时间;
 
Linux基础命令知识
 
 
 
cal:显示日历;
cal [month] [year] clock/hwclock
command 查看硬时间
-s 硬时间写入软时间
-w 软时间写入硬时间
init :init 0 关机
:init 6 重启
poweroff
shutdown shutdown (关机) -r (重启) -h +xx (xx分钟后关机)
shutdown -h +0
+xx 几分钟后关机
20:00
TIME:无指定,默认相当于 +1
now: 立刻,相当于+0
+m: 相对时间表示法,几分钟之后;例如 +3
hh:mm: 绝对时间表示,指明具体时间
 
 
screen命令:
创建新screen会话
screen –S [SESSION]
加入screen会话
screen –x [SESSION]
退出并关闭screen会话
exit
剥离当前screen会话
Ctrl+a,d
显示所有已经打开的screen会话
screen -ls
恢复某screen会话
screen -r [SESSION]
 
安装screen
centos6:
在虚拟机上操作,加载好光盘centos6-dvd1
[root@centos6 ~]# cd /media/CentOS_6.9_Final/Packages/
[root@centos6 Packages]# rpm -ivh screen-4.0.3-19.el6.x86_64.rpm
centos7:
在虚拟机上操作,加载好光盘centos7-everything
[root@centos7 ~]# mount /dev/cdrom /media/
mount: /dev/sr0 is write-protected, mounting read-only
 
[root@centos7 ~]# rpm -ivh /media/Packages/screen-4.1.0-0.25.20120314git3c2946.el7.x86_64.rpm
 
screen -S sessionname 创建screen
screen -x sessionname 加入screen
screen -ls 查看screen
 
echo命令
功能:显示字符
语法:echo [-neE][字符串]
说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开,
并在最后加上换行号
选项:
-E (默认)不支持 \ 解释功能
-n 不自动换行
-e 启用 \ 字符的解释功能
显示变量:
echo "$VAR_NAME“ 变量会替换,弱引用 “” 双引号
echo '$VAR_NAME‘ 变量不会替换,强引用 `` 反向单引号
[root@centos6 ~]# echo -e "\a" 报警
[root@centos6 ~]# echo -e "aaa\n123\naaaaa"
aaa
123
aaaaa
启用命令选项-e,若字符串中出现以下字符,则特别加以处理,而不会将它当
成一般文字输出
\a 发出警告声
\b 退格键
\c 最后不加上换行符号
\n 换行且光标移至行首
\r 回车,即光标移至行首,但不换行
\t 插入tab
\\ 插入\字符
\0nnn 插入nnn(八进制)所代表的ASCII字符
echo -e '\033[43;31;5mmagedu\033[0m'
\xHH插入HH(十六进制)所代表的ASCII字
 
命令行扩展、被括起来的集合
命令行扩展:$( ) 或 ``
把一个命令的输出打印给另一个命令的参数
echo "This system's name is $(hostname) "
This system's name is server1.example.com
echo "i am `whoami` "
i am root
括号扩展:{ }
打印重复字符串的简化形式
echo file{1,3,5}
file1 file3 file5
rm -f file{1,3,5}
echo {1..10}
echo {a..z}
echo {000..20..2}
 
tab键:补全
 
$的用法
$varname 引用变量的值
如:[root@centos7 ~]# echo $SHELL当前shell类型