一、常用命令
1、查看当前系统多少位
- getconf LONG_BIT
- arch
zy@ubuntu:~$ arch
x86_64
zy@ubuntu:~$ getconf LONG_BIT
64
2、显示当前的终端号以及登录的用户有哪些
- tty 显示当前终端
[zy@ubuntu ~]$ tty
/dev/pts/0
#tty 终端
#pts 伪终端,也称虚拟终端
- who 显示所有用户的终端信息
[root@Rocky9 ~]$ who
zy tty1 2024-09-26 11:25
root pts/1 2024-09-26 12:35 (192.168.106.1)
- who am i 显示当前用户终端信息
[root@Rocky9 ~]$ who am i
root pts/1 2024-09-26 12:35 (192.168.106.1)
- whoami 显示当前的用户名
[root@Rocky9 ~]$ whoami
root
- w 显示所有的用户终端信息以及执行的操作
[root@zy ~]$ w
21:30:59 up 11 min, 1 user, load average: 0.00, 0.04, 0.05
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 192.168.106.1 21:26 1.00s 0.02s 0.00s w
3、修改主机名
- hostname 临时修改主机名
- hostnamectl set-hostname 永久修改主机名
#临时修改主机名
[root@192 ~]# hostname zy
[root@192 ~]# cat /etc/hostname
rocky8
[root@192 ~]# hostnamectl set-hostname zy #永久修改主机名
[root@192 ~]# cat /etc/hostname
zy
4、修改命令提示符
- $PS1 变量
1 代表加粗 32m 代表提示符颜色
5、内部命令、外部命令和别名
- 内部命令:由shell自带当用户登录的时候自动加载到内存中
#使用type可以查看命令的类型
[root@zy ~]$ type echo
echo is a shell builtin
- 外部命令:有独立的磁盘文件,当使用命令时从磁盘加载到内存中
[root@zy ~]$ type hostnamectl
hostnamectl is /usr/bin/hostnamectl
#外部命令的存储路径
[root@zy ~]$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
#常用的外部命令会将命令路径存储在hash缓存表中,当需要执行的时候 先从hash缓存表寻找路径达到提高命令查找的速度
[root@zy ~]$ hash
hits command
1 /usr/bin/w
7 /usr/bin/clear
[root@zy ~]$ hash -r
[root@zy ~]$ hash
hash: hash table empty
#使用hash -r删除命令的路径
- alias别名:
#设置命令别名
[root@zy ~]$ alias cdn="cd /etc/sysconfig/network-scripts"
[root@zy ~]$ cdn
#取消命令别名
[root@zy network-scripts]$ unalias cdn
[root@zy network-scripts]$ cdn
-bash: cdn: command not found
- 命令的执行顺序
绝对路径/相对路径 > 别名 > 内部命令 > hash缓存表 >外部命令
6、查看帮助
- whatis 显示外部命令的简略帮助信息
#如果第一次安装操作系统那么需要使用mandb更新索引信息
[root@zy ~]$ whatis cd
cd (1) - bash built-in commands, see bash(1)
[root@zy ~]$ whatis rm
rm (1) - remove files or directories
- help 显示内部命令和外部命令的帮助信息
内部命令:help cmd
外部命令:cmd --help|-h
- man显示帮助的详细信息
#man手册将帮助信息分为9个章节
1 Executable programs or shell commands
2 System calls (functions provided by the kernel)
3 Library calls (functions within program libraries)
4 Special files (usually found in /dev)
5 File formats and conventions eg /etc/passwd
6 Games
7 Miscellaneous (including macro packages and conventions), e.g. man(7), groff(7)
8 System administration commands (usually only for root)
9 Kernel routines [Non standard]
[root@zy ~]$ whatis passwd
openssl-passwd (1ssl) - compute password hashes
passwd (1) - update user's authentication tokens
[root@zy ~]$ man 1 passwd #查看第一章的passwd帮助信息
#如果是内部命令那么帮助信息会集成到BASH_BUILTINS(1)的帮助文档中
7、echo的常见用法
echo: echo [-neE] [参数 ...]
将参数写到标准输出。
在标准输出上,显示用空格分割的 ARG 参数后跟一个换行。默认追加换行
选项:
-n 不要追加换行
-e 对反斜杠转义的解释
-E 不对反斜杠转义的解释
echo' 对下列反斜杠字符进行转义:
\a 警告(响铃)
\c 抑制更多的输出,即后面不再添加任何字符(包括特殊字符 如换行符)
\n 换行
\r 回车
\t 横向制表符
\\ 反斜杠
[root@zy ~]$ echo -e "hello\tworld"
hello world
[root@zy ~]$ echo -E "hello\tworld"
hello\tworld
[root@zy ~]$ echo -n "hello\tworld"
hello\tworld[root@zy ~]$
8、history的常见用法
显示操作历史列表
选项:
-c 删除所有条目从而清空历史列表。
-a 将当前会话的历史行追加到历史文件中
-r 读取历史文件并将内容追加到历史列表中
-w 将当前历史写入到历史文件中
设定自定义格式的历史
[root@Rocky9 ~]$ echo HISTTIMEFORMAT="%F %T " >> .bashrc
[root@Rocky9 ~]$ history
164 2024-07-26 15:10:40 vi .bashrc
165 2024-07-26 15:11:02 source .bashrc
166 2024-07-26 15:11:06 history
#每个用户的history保存在 .bash_history文件中
9、修改时区
- date 显示当前的时间
%y 年份最后两位数位 (00-99)
%m 月份(01..12)
%d 按月计的日期(例如:01)
%H 小时(00-23)
%M 分钟(00..59)
%S 秒(00-60)
%s 1970-01-01 00:00:00 UTC 以来的秒数
%T %y-%m-%d
%F %H-%M-%S
[root@Rocky9 ~]$ date +"%y-%m-%d %H-%M-%S"
24-09-26 21-22-37
- timedatectl set-timezone 修改时区
[zy@ubuntu ~]$ date
Thu Sep 26 07:25:46 AM UTC 2024
[zy@ubuntu ~]$ timedatectl set-timezone Asia/Shanghai
==== AUTHENTICATING FOR org.freedesktop.timedate1.set-timezone ====
Authentication is required to set the system timezone.
Authenticating as: zy
Password:
==== AUTHENTICATION COMPLETE ====
[zy@ubuntu ~]$ date
Thu Sep 26 03:26:07 PM CST 2024
[zy@ubuntu ~]$ timedatectl
Local time: Thu 2024-09-26 15:29:58 CST
Universal time: Thu 2024-09-26 07:29:58 UTC
RTC time: Thu 2024-09-26 07:29:58
Time zone: Asia/Shanghai (CST, +0800)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no
10、查看当前的CPU信息
- lscpu 查看cpu信息
- cat /proc/cpuinfo 查看cpu信息
#查看一共有多少核
[root@zy ~]$ lscpu | grep -Ei "^CPU\(S\)"
CPU(s): 4
[root@zy ~]$ grep -Eic 'processor' /proc/cpuinfo
4
11、查看内存信息
- free 查看内存信息
[root@zy ~]$ free -h
total used free shared buff/cache available
Mem: 3.5Gi 287Mi 3.0Gi 8.0Mi 263Mi 3.0Gi
Swap: 3.9Gi 0B 3.9Gi
12、查看硬盘空间
- lsblk
- /proc/partitions
[zy@ubuntu ~]$ lsblk -f | tr -s " "
NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
sr0 iso9660 Joliet Extension Ubuntu-Server 24.04 LTS amd64 2024-04-23-12-46-09-00
nvme0n1
├─nvme0n1p1
├─nvme0n1p2 ext4 1.0 55d3c438-235c-4dba-9933-4a1789e04310 1.7G 5% /boot
└─nvme0n1p3 LVM2_member LVM2 001 g4XfUJ-V7A5-ZsMK-i27B-2De2-ZHfG-xmAkYr
└─ubuntu--vg-ubuntu--lv ext4 1.0 6e7e89fc-4c5f-4149-aa6a-f3981f94e712 39.4G 13% /
[root@zy ~]$ cat /proc/partitions
major minor #blocks name
259 0 104857600 nvme0n1
259 1 1048576 nvme0n1p1
259 2 103808000 nvme0n1p2
11 0 13880704 sr0
253 0 66985984 dm-0
253 1 4116480 dm-1
253 2 32702464 dm-2
13、uname的常见用法
#查看内核版本
[root@zy ~]$ uname -r
4.18.0-553.el8_10.x86_64
#查看操作系统多少位
[root@zy ~]$ uname -p
x86_64
#查看服务器名
[root@zy ~]$ uname -n
zy
14、查看当前系统的发行版本
- lsb_release
- /etc/os-release
[zy@ubuntu ~]$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 24.04 LTS
Release: 24.04
Codename: noble
[zy@ubuntu ~]$ cat /etc/os-release
PRETTY_NAME="Ubuntu 24.04 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo
15、hexdump以其它进制显示文本内容
用法:hexdump [选项] <文件>...
以十六进制、十进制、八进制、二进制或 ascii 显示文件内容。
选项:
-C 以十六进制显示字符
-s 跳过开头的指定字节偏移
-n 只解释规定字节长度的输入
#其中空格也算一个字节,注意win中换行为先回车后换行与Linux直接换行不同
[root@zy ~]$ hexdump -C -s 2 -n 3 a.txt
00000002 62 20 63 |b c|
00000005
16、{}特殊符号
[root@zy ~]$ echo {1..10}
1 2 3 4 5 6 7 8 9 10
[root@zy ~]$ echo {10..1}
10 9 8 7 6 5 4 3 2 1
[root@zy ~]$ echo {10..1..2}
10 8 6 4 2
[root@zy ~]$ echo {a.txt,b.txt}
a.txt b.txt
标签:26,Linux,常用命令,更新,echo,2024,zy,ubuntu,root
From: https://blog.csdn.net/weixin_47311510/article/details/142533939