百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术教程 > 正文

shell——常用命令2

csdh11 2025-01-15 12:07 23 浏览

shutdown

该命令将关闭系统。

-y 对提示的所有问题都回答 y

-gn 给其他用户n秒的时间退出,缺省值为60秒

-in 系统退到第n种方式,方式如下:

0关机

1单用户模式

2多用户模式

3网络下的多用户模式

6关机并重新启动

$ shutdown now立即关机。
$ shutdown -g60 -I6 -y将会在60秒之后关机,然后重新启动系统。

wait 格式:wait process ID

该命令可以用来等待进程号为 process ID的进程或所有的后台进程结束后,再执行当前脚本。

下面的命令等待进程号为1299的进程结束后再执行当前脚本:

$ wait 1299

下面的命令等待所有的后台进程结束后再执行当前脚本:

$ wait

logname该命令可以显示当前所使用的登录用户名:

logname --help得到帮助。

[hadoop@localhost d4]$ logname
hadoop

sleep number 该命令使系统等待相应的秒数。例如:

$ sleep 10意味着系统在1 0秒钟之内不进行任何操作。

uname -m 显示机器的处理器架构(2)
uname -r 显示正在使用的内核版本,显示操作系统的发行号
uname -p # 显示芯片名称,例如:powerpc
uname –a # 显示系统名、节点名、版本、机器ID
uname -s:系统名。
uname -v:只显示操作系统版本或其发布日期。


whereis

whereis命令能够给出系统命令的二进制文件及其在线手册、源码的路径。

[hadoop@localhost dzztest]$ whereis mysql
mysql: /usr/bin/mysql /usr/lib64/mysql /usr/share/mysql /usr/share/man/man1/mysql.1.gz

time[语法]:time 命令

[说明]:执行命令,并在执行完后显示其运行的时间

[hadoop@localhost d4]$ time ./d3.sh
--1--user1
--2--user1
--3--user
--4--user1add
--1--user2
--2--user2
--3--user
--4--user2add
real 0m0.003s
user 0m0.003s
sys 0m0.001s

su[语法]:su [-] [username]

[说明]:su 命令使当前用户成为指定用户,若无指定,则成为超级用户,如要离开当前用户的身份,可以打exit

但必须输入该用户的密码,-选项表示用该用户的注册环境成为该用户

passwd

[语法]: passwd [用户]

[说明]: 修改密码,指定用户则修改指定用户密码

参  数:

-d  删除密码。本参数仅有系统管理者才能使用。

-f  强制执行。

-k  设置只有在密码过期失效后,方能更新。

-l  锁住密码。

-s  列出密码的相关信息。本参数仅有系统管理者才能使用。

-u  解开已上锁的帐号。

passwd hadoop

# passwd root

New UNIX password:

Retype new UNIX password:

passwd: all authentication tokens updated successfully

#

wall[语法]:wall

[说明]:向所有用户广播通知信息,常用于警告所有用户

wall –a message

wall –g Informix message给组发消息

wall < 文件名

[hadoop@localhost d4]$ wall 12
[hadoop@localhost d4]$
Broadcast message from hadoop@localhost.localdomain (pts/3) (Tue Sep 13 21:29:30 2022):
12

touch格式:touch options filename

选项:

-t MMDDhhmm 创建一个具有相应月、日、时分时间戳的文件。

[hadoop@localhost dzztest]$ touch fdd以当前时间创建文件或更新已有文件的时间戳
[hadoop@localhost dzztest]$ touch -t 08152045 fdd1 以时间戳8月15日上午20:45创建了一个名为fdd1的空文件。
[hadoop@localhost dzztest]$ ll
-rw-rw-r-- 1 hadoop hadoop 0 Aug 15 20:45 fdd1

nl

nl命令可用于在文件中列行号,在打印源代码或列日志文件时很有用。

格式:nl options file

选项:

- p:在新的一页不重新计数。

[hadoop@localhost dzztest]$ nl 33列出33文件的行号
1 -rw-rw-r-- 1 hadoop hadoop 0 Sep 10 23:12 22
2 -rw-rw-r-- 1 hadoop hadoop 0 Sep 10 23:18 33
3 -rwxrwxrwx 1 hadoop hadoop 66 Sep 9 21:48 a1.sh
4 -rwxrwxrwx 1 hadoop hadoop 109 Sep 9 20:10 a.sh
5 -rwxrwxrwx 1 hadoop hadoop 128 Sep 10 03:03 b.sh
6 -rwxrwxrwx 1 hadoop hadoop 204 Sep 10 03:24 c.sh
7 drwxrwxr-x 2 hadoop hadoop 97 Sep 10 20:02 d11
8 drwxrwxr-x 2 hadoop hadoop 52 Sep 10 20:51 d12
9 -rwxrwxrwx 1 hadoop hadoop 138 Sep 10 04:46 d.sh
10 -rwxrwxrwx 1 hadoop hadoop 214 Sep 9 21:00 e.sh
11 -rw-rw-r-- 1 hadoop hadoop 192 Sep 10 04:37 functions.main
$ nl 33 >hold_file输出重定向到hold_file文件中。
$ nl 33 | lpr 结果重定向到打印机。

printf

格式:printf format arguments它将格式化文本送至标准输出。

其中,格式符f o r m a t包含三种类型的项,这里我们只讨论格式符:

%[- +]m.nx

其中横杠-为从行首算起的起始位置。一般说来 m表示域的宽度而n表示域的最大宽度。

‘%’后面可跟下列格式字符:

s:字符串。c:字符。d:数字。x:16进制数。o:10进制数。

printf命令本身并不会产生换行符,必须使用转义字符来实现这样的功能。下面是最常用的转义字符:

\a:响铃。\b:退格。

\r:回车。\f:换页。

\n:换行。\t:跳格。

$ printf "Howzat!\n"输出了一个字符串,使用 \ n来换行
Howzat!
[hadoop@localhost dzztest]$ printf "\x2B\n"把16进制值转换为ASCII字符+。
+
[hadoop@localhost dzztest]$ printf "%-5sdzz is name\n"从左起第5个字符的位置开始显示字符串。
dzz is name
[hadoop@localhost dzztest]$ printf "%-2sdzz is name\n"
dzz is name
[hadoop@localhost dzztest]$ printf "23\t63"
23 63[hadoop@localhost dzztest]$ printf "23\t63\a"
23 63[hadoop@localhost dzztest]$

who格式:who options

选项:

- a:显示所有的结果。

- r:显示当前的运行级别(在L I N U X系统中应当使用r u n l e v e l命令)。

- s:列出用户名及时间域。

[hadoop@localhost dzztest]$ who
hadoop :0 2021-05-02 01:12 (:0)
hadoop pts/0 2022-09-12 17:49 (:0)
hadoop pts/1 2022-09-15 19:02 (192.168.30.1)
[hadoop@localhost dzztest]$ who -a
system boot 2021-05-02 01:10
run-level 5 2021-05-02 01:11
hadoop ? :0 2021-05-02 01:12 ? 1922 (:0)
hadoop + pts/0 2022-09-12 17:49 old 80174 (:0)
pts/1 2021-05-02 01:34 0 id=/1 term=0 exit=0
hadoop + pts/1 2022-09-15 19:02 . 8227 (192.168.30.1)
pts/2 2022-09-15 19:34 41389 id=ts/2 term=0 exit=0
pts/3 2022-09-13 21:33 88250 id=ts/3 term=0 exit=0
pts/4 2022-09-12 19:16 80273 id=ts/4 term=0 exit=0
[hadoop@localhost dzztest]$ who -r
run-level 5 2021-05-02 01:11
[hadoop@localhost dzztest]$ who -s
hadoop :0 2021-05-02 01:12 (:0)
hadoop pts/0 2022-09-12 17:49 (:0)
hadoop pts/1 2022-09-15 19:02 (192.168.30.1)

who am i列出现在系统中登录的用户信息,who am i 显示自己

[root@localhost hadoop]# who am i
hadoop pts/1 2022-09-14 23:06 (192.168.30.1)

whoami 显示执行该命令的用户名。这不是who命令的一个选项,可以单独应用。

free命令

free命令的功能是查看当前系统内存的使用情况,它显示系统中剩余及已用的物理内存和交换内存,以及共享内存和被核心使用的缓冲区。

该命令的一般格式为: free [-b | -k | -m] 命令中各选项的含义如下:

-b 以字节为单位显示。-k 以K字节为单位显示。-m 以兆字节为单位显示。

[hadoop@localhost d5]$ free
total used free shared buff/cache available
Mem: 997948 449176 120468 1576 428304 293080
Swap: 2097148 1058304 1038844
[hadoop@localhost d5]$ free -m
total used free shared buff/cache available
Mem: 974 438 117 1 418 286
Swap: 2047 1033 1014
[hadoop@localhost d5]$ free -k
total used free shared buff/cache available
Mem: 997948 449172 120452 1576 428324 293084
Swap: 2097148 1058304 1038844

du[语法]:du [-ars] [dir]

[说明]:显示磁盘空间专用情况

-r 提供无法打开的文件信息

-s 仅显示指定目录所占空间的总和

-a 显示文件大小及目录总空间,其后可根文件名作参数

du显示的磁盘空间占用是以512字节的块来表示的。它主要用于显示目录所占用的空间。

在本例中,/var目录所占用的空间为14929块(每块512字节)。

du -hm 将以M为单位输出结果
du -hk则以K为单位输出。
[hadoop@localhost ~]$ du -sm .以M为单位
3565 .
[hadoop@localhost ~]$ du -sh .显示单位,估算目录 'dir1' 已经使用的磁盘空间
3.5G .
[hadoop@localhost ~]$ du -s ..以K为单位,du -sk
3649832 .
[hadoop@localhost dzztest]$ du 查看目录总容量和子目录容量
32 ./d11
16 ./d12
76 .
[hadoop@localhost dzztest]$ du d11
32 d11

df显示可用磁盘空间

[hadoop@localhost d5]$ df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda3 18G 15G 2.8G 85% /
devtmpfs 472M 0 472M 0% /dev
tmpfs 488M 0 488M 0% /dev/shm
tmpfs 488M 27M 461M 6% /run
tmpfs 488M 0 488M 0% /sys/fs/cgroup
/dev/sda1 297M 194M 104M 66% /boot
tmpfs 98M 44K 98M 1% /run/user/1002
[hadoop@localhost ~]$ df -k查看空间
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 18555904 14323204 4232700 78% /
devtmpfs 482584 0 482584 0% /dev
tmpfs 498972 0 498972 0% /dev/shm
tmpfs 498972 14960 484012 3% /run
tmpfs 498972 0 498972 0% /sys/fs/cgroup
/dev/sda1 303788 197712 106076 66% /boot
tmpfs 99796 36 99760 1% /run/user/1002
[hadoop@localhost ~]$ df -m
Filesystem 1M-blocks Used Available Use% Mounted on
/dev/sda3 18121 13988 4134 78% /
devtmpfs 472 0 472 0% /dev
tmpfs 488 0 488 0% /dev/shm
tmpfs 488 15 473 3% /run
tmpfs 488 0 488 0% /sys/fs/cgroup
/dev/sda1 297 194 104 66% /boot
tmpfs 98 1 98 1% /run/user/1002

2022-9-17

相关推荐

Github霸榜的SpringBoot全套学习教程,从入门到实战,内容超详细

前言...

SpringBoot+LayUI后台管理系统开发脚手架

源码获取方式:关注,转发之后私信回复【源码】即可免费获取到!项目简介本项目本着避免重复造轮子的原则,建立一套快速开发JavaWEB项目(springboot-mini),能满足大部分后台管理系统基础开...

Spring Boot+Vue全栈开发实战,中文版高清PDF资源

SpringBoot+Vue全栈开发实战,中文高清PDF资源,需要的可以私我:)SpringBoot致力于简化开发配置并为企业级开发提供一系列非业务性功能,而Vue则采用数据驱动视图的方式将程序...

2021年超详细的java学习路线总结—纯干货分享

本文整理了java开发的学习路线和相关的学习资源,非常适合零基础入门java的同学,希望大家在学习的时候,能够节省时间。纯干货,良心推荐!第一阶段:Java基础...

探秘Spring Cache:让Java应用飞起来的秘密武器

探秘SpringCache:让Java应用飞起来的秘密武器在当今快节奏的软件开发环境中,性能优化显得尤为重要。SpringCache作为Spring框架的一部分,为我们提供了强大的缓存管理能力,让...

3,从零开始搭建SSHM开发框架(集成Spring MVC)

目录本专题博客已共享在(这个可能会更新的稍微一些)https://code.csdn.net/yangwei19680827/maven_sshm_blog...

Spring Boot中如何使用缓存?超简单

SpringBoot中的缓存可以减少从数据库重复获取数据或执行昂贵计算的需要,从而显著提高应用程序的性能。SpringBoot提供了与各种缓存提供程序的集成,您可以在应用程序中轻松配置和使用缓...

我敢保证,全网没有再比这更详细的Java知识点总结了,送你啊

接下来你看到的将是全网最详细的Java知识点总结,全文分为三大部分:Java基础、Java框架、Java+云数据小编将为大家仔细讲解每大部分里面的详细知识点,别眨眼,从小白到大佬、零基础到精通,你绝...

1,从零开始搭建SSHM开发框架(环境准备)

目录本专题博客已共享在https://code.csdn.net/yangwei19680827/maven_sshm_blog1,从零开始搭建SSHM开发框架(环境准备)...

做一个适合二次开发的低代码平台,把程序员从curd中解脱出来-1

干程序员也有好长时间了,大多数时间都是在做curd。现在想做一个通用的curd平台直接将我们解放出来;把核心放在业务处理中。用过代码生成器,在数据表设计好之后使用它就可以生成需要的controller...

设计一个高性能Java Web框架(java做网站的框架)

设计一个高性能JavaWeb框架在当今互联网高速发展的时代,构建高性能的JavaWeb框架对于提升用户体验至关重要。本文将从多个角度探讨如何设计这样一个框架,让我们一起进入这段充满挑战和乐趣的旅程...

【推荐】强&amp;牛!一款开源免费的功能强大的代码生成器系统!

今天,给大家推荐一个代码生成器系统项目,这个项目目前收获了5.3KStar,个人觉得不错,值得拿出来和大家分享下。这是我目前见过最好的代码生成器系统项目。功能完整,代码结构清晰。...

Java面试题及答案总结(2025版持续更新)

大家好,我是Java面试分享最近很多小伙伴在忙着找工作,给大家整理了一份非常全面的Java面试场景题及答案。...

Java开发网站架构演变过程-从单体应用到微服务架构详解

Java开发网站架构演变过程,到目前为止,大致分为5个阶段,分别为单体架构、集群架构、分布式架构、SOA架构和微服务架构。下面玄武老师来给大家详细介绍下这5种架构模式的发展背景、各自优缺点以及涉及到的...

本地缓存GuavaCache(一)(guava本地缓存原理)

在并发量、吞吐量越来越大的情况下往往是离不开缓存的,使用缓存能减轻数据库的压力,临时存储数据。根据不同的场景选择不同的缓存,分布式缓存有Redis,Memcached、Tair、EVCache、Aer...