Linux Shell命令行的基本知识及命令

本文适合零基础入门,是自己的学习和总结,仅供参考。 

一、进入命令行界面

可以通过以下三种方法:

 1. 利用已安装的centos7 操作系统虚拟机进入

键盘按住 [Ctrl] + [Alt]的同时,按以下键:
[F2] ~ [F6] :进入tty2 ~ tty6 命令行终端;
想再切回图形界面: [Ctrl] + [Alt] + [F1]

2. 利用windows下的ssh工具登陆远程sshd服务器的终端,如 putty.exe 

命令格式:putty.exe [登陆用户名]@<主机ip地址或名称>
如: putty.exe train@xx.xxx.xx.xx,提示输入的密码: train 

3. 在本地windows系统中安装的git-bash程序进入: 

 git-bash 是Windows操作系统下模拟Linux 命令行模式,拥有常见的命令集,可以做为 Linux命令练习环境。根据操作系统的情况(32位/64位)下载对应的安装包。在目标目录下右键菜单选中"Git bash here" 弹出命令行窗口。

* 利用以上方式登录命令行后,我们会发现:
以root用户登陆后,提示符会显示 #
以非root用户登陆后,提示符则显示 $

 二、 Shell命令行的一般格式

 命令名称 [-选项] 参数1 参数2 参数3 参数4 ...

 注意点:

        (1) 它们之间都有一个空格,且多个空格也会被视为一个空格,?很重要! 如果参数有空格时,一般是在前后加双引号。
        (2) Linux 系统中命令名是大小写敏感的,也就是 "cd" 与 "CD" 是不一样的,后者是没有相应的命令的。
        (3) 如果命令太长,可以行的结束前添加 反斜扛(\),再按[Enter]另起一行编写剩下的命令

 例子:

要求:列出~目录下所有隐藏的文件或目录
以下3种命令都可以得到同样的结果

ls -al ~
ls    -al     ~
ls -a -l ~

 最后命令已写好,如果要马上执行就按[Enter]。

三、设置命令行的输出编码

3.1 查看当前环境的编码: locale 

命令行中输入:locale
输出结果:

 

 3.2 设置新编码避免中文乱码

 有时命令行输出的结果有乱码,可以通过以下命令解决:

LANG=en_US.utf8
export LC_ALL=en_US.utf8
#或
LANG=zh_CN.gbk
export LC_ALL=zh_CN.gbk

 四、命令行下最常用四个快捷键

  •  [Tab]键,主要是用于命令名称补全、文件全称补全及参数补全,是命令编写的好助手。其中 参数补全 需要再安装 bash-completion 软件才能实现
  • [Ctrl]+C 组合键,可以中断当前程序
  • [Ctrl]+D 组合键,离开当前命令行窗口,相当于命令 exit 的效果
  • [Shift]+[PageUp/PageDown] 组合键,用于向上或向下查看命令行窗口历史输出结果

五、三个基础命令 

 5.1 date 得到当前系统时间

#得到当前系统时间
date

#得到当前系统时间,只输出日期部分
date +%Y/%m/%d

#得到当前系统时间,只输出时分部分
date +%H:%M

#设置当前系统的时间(只能在root用户下)
date -s "2024-01-16 20:01:01" 

5.2 cal 命令行下显示日历

 命令格式:  cal [月份] [年份]

#显示当前月份的日历:
cal

#显示2018年全年的日历:
cal 2018

#显示2018年7月的日历:
cal 7 2018

5.3 bc 命令行下的简单计算器

 直接输入:bc 命令就可运行, 通过输入数字和
+、-、*、/(除)、^(指数)和%(余数)等运算符进行计算,
默认情况下是整数运算,如果要开启小数运算,则需要输入scale=[小数位数]。
退出离开请输入 quit
以上在交互模式下的操作,有时也用于表达式计算:

$>echo "1.212*3" | bc 
3.636

$>echo "scale=2;3/8" | bc
0.37

六、学会看输出错误信息

[test@gg ~]$ DATE
-bash: DATE: command not found

看到这个“command not found” 输出错误,其实就不外乎以下三种情况:

命令不存在,没有安装相应的应用,只要安装就可以解决
对应的命令路径,没有添加到全局命令搜索变量PATH中
命令名称写错了

七、查看命令帮助 

可以试着在命令下输入 g[Tab][Tab]  (点两次Tab键)命令可能会有200多个以上的可用命令,
这只是其中的一部分,Linux 的命令是太多了,我们不可能记住所有命令使用方法。

 可通过compgen命令查看可用的命令列表: compgen -c

有什么好方法可以得到命令的使用帮助说明? 

7.1 利用 --help 参数

 命令格式: <命令名称> --help

例如:date --help

7.2 man 帮助页面 

 man 是 manual 的简写,中文是“手册”的意思。
通过它可以获得比"--help”更多的关于命令的帮助说明。
命令格式:man <命令名称>

例如:man date

man页面说明:
括号中的数字的意义
这里我们发现第一行有内容“DATE(1)”,这里的1是有意义的,代表的意义:
可以再试一下命令man null
主要的组成部分说明
该命令相于用vi命令打开了一个文本进行操作,不过是只读模式。

 7.3 info帮助页面

 命令格式:info <命令名称>

 比man命令更详细的,类似wiki一样有章节的帮助文档。
提示:在查看的时候,可以按 h 获得快捷键操作说明。

 7.4 直接到 /usr/share/doc 目录下去查看文档

 那里有很多说明文件文档

 八、一个简单文本编辑器命令 nano

 格式:nano <文件名>

它相比 vi 更贴近 windows操作,简单易用。 

 九、了解关机的正确方法

由于Linux允许多人同时多任务作业,这时关机操作就显得“危险”:
若不正常关机,则可能造成文件系统的毁损
正确的关机方法: 

9.1.  观察系统的使用状态 利用以下命令:

  • who 可看到当前主机所有的使用者列表
  • netstat -a 查看当前所有运行进程使用网络的情况
  • ps -aux 查看当前所有运行进程列表

9. 2. 通知在线使用者关机的时刻

比如:在关机之前的10分钟通知在线用户关机的消息

/sbin/shutdown -h 10 'I will shutdown after 10 mins'

9.3. 正确的关机指令使用 

  • 将数据同步从内存写入硬盘中的指令: sync
  • 惯用的关机指令: shutdown
  • 重新启动, 关机: reboot, halt, poweroff

* 注意: 有些系统只允许root用户才能执行 shutdown和reboot等命令; centos 是允许终端执行以上命令的。 

十、认识文件 

Linux 的世界都是文件!


10.1 当执行以下命令ls :

 ls -lhi /etc/hosts

 会得到以下结果:

第1列: inode 号码,存储地址
第2列: 文件类型+权限
第3列: 硬链接数
第4列: 属主-所有者(owner)
第5列: 属组-所有者属于的组(group)
第6列: 文件大小(bytes为单位)
第7列: 文件的创建时间或修改时间
第8列: 文件或目录的名字(不属于属性)

10.2 文件的类型符号对应

只有1位 

符号类型
-文件
d目录
llink类型,相当于快捷键
b用于存储的设备
c支持串行的设备,如键盘、鼠标等

10.3 文件的权限

有9位,以三个为一组,且都以 rwx 为顺序的组合。
其中: 

字母全称说明
rread可读
wwrite可写
xexecute如果文件类型是文件,则代表可执行;如果文件类型是目录,则代表可进入。
- 代表没有权限

共三组(以 -rw-r--r--为例 => [rw-]、[r-x]、[r--] :

第1组User(rw-): 该文件的拥有者的权限:可读写,但不能执行
第2组Group(r--): 与该文件的拥有者同组的用户的权限:只能读,不能写和执行
第3组Others(r--):不是拥有者且不是与拥有者同组的其他用户权限:只能读,不能写和执行

 

  • 33
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AI天任

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值