linux基础(1-10)

1.帮助命令

man 命令
/【要搜索的内容】

man的级别

1 查看命令的帮助
2 查看可被内核调用的函数的帮助
3 查看函数和函数库的帮助
4 查看特殊文件的帮助(主要是/dev目录下的文件)
5 查看配置文件的帮助
6 查看游戏的帮助
7 查看其他杂项的帮助
8 查看系统管理员可用命令的帮助
9 查看和内核相关文件的帮助

查看命令拥有哪个级别的帮助

man -f 命令等同于whatis 命令
比如man -f passwd会看到passwd命令有个配置文件,所以用man 5 passwd可以看到这个配置文件的帮助,用whereis passwd可以看到文件所在位置

查看所有包含关键字的命令

man -k 关键字等同于apropos 关键字,如apropos passwd

2.别名与快捷键

查看与设定别名

alias 查看系统中所有的命令别名
alias 别名=‘原命令‘ 设定命令的别名
alias rm=‘rm -i‘或者alias ll=‘ls -l‘
相当于设置快捷命令,只不过是临时生效的

别名永久生效与删除别名

vi ~/.bashrc 写入环境变量配置文件
unalias 临时删除别名

常用快捷键

快捷键 含义
ctrl+c 强制终止当前命令
ctrl+l 清屏
ctrl+a 光标移动到命令行首
ctrl+e 光标移动到命令行尾
ctrl+u 光标所在位置删除到行首
ctrl+z 把命令放入后台
ctrl+r 在历史命令中搜索

3.常用目录作用

/根目录
/bin命令保存目录(普通用户就可以读取命令)
/sbin
/usr系统软件资源目录
/boot启动目录,启动相关文件
/dev设备文件保存目录
/etc配置文件保存目录
/lib系统函数库保存目录
/mnt系统挂载目录
/media挂载目录
/sys /proc保存内存挂载点,不能直接操作
/tmp临时目录,存放临时数据
/var保存系统可变文档目录

/usr下也有/bin/sbin目录,同/下的两个目录一起保存系统命令,/sbin下的命令只有超级用户才能执行
可以在家目录‘/home‘或根目录/,以及/tmp目录下随便放内容,其他都别动,但也不推荐在根目录下操作,只放必要数据

4.挂载命令

相当于win中的分配盘符,只不过linux中叫挂载

查询与自动挂载

mount 查询系统中已经挂载的设备

  • 显示的都是~ on ~ type ~这样的结构
  • /dev/sda5 on / type ext4 (rw)
    其中sda5代表第一块SATA硬盘的第五个分区,/代表这是根分区,ext4代表文件系统是ext4,权限是读写;
  • 类似的,/dev/sda1 on /boot type ext4 (rw)代表第一块SATA硬盘的第一个分区是boot分区,文件系统是ext4,权限是读写

mount -a 依据配置文件/etc/fstab的内容,把这个文件里写的所有设备都挂载一遍,像/,/boot,/home,swap这些分区都在文件里,所以系统才会在每次开机时自动挂载这些分区

挂载命令格式

mount【-t文件系统】【-o特殊选项】设备文件名 挂载点
-t 文件系统 加入文件系统类型来指定挂载的类型,可以ext3,ext4,iso9660等文件系统
-o 特殊选项 可以指定挂载的额外选项,有各种参数,可多个一起,用逗号隔开
特别看下这个exec/noexec,代表执行/不执行,设定是否允许在文件系统中执行可执行文件,默认是exec文件
比如mount -o remount,noexec /home/表示重新挂载/home分区,并且不允许执行可执行文件,此时如果再去./hello.sh会显示权限不够

5.关机和重启命令

关机命令

shutdown 【选项】时间
-c 取消前一个关机命令
-h 关机
-r 重启

  • 使用date命令看系统日期
  • shutdown -r 05:30表示在凌晨5点30分重启,此时进入倒计时状态,无法再操作,通过ctrl+c取消。
  • 在最后加上&,使命令在后台执行,不占用操作界面,两次回车后继续自己的操作。此时如果不想在后台执行这条命令,可以用shutdown -c来取消。
  • shutdown -r now表示现在就重启。
  • 在远程登录服务器时要避免使用这个命令!

其他关机命令

halt
poweroff
init 0
但这三者都不太安全

其他重启命令

reboot 比较安全
init 6 不安全

这里的0和6是什么意思?

代表系统运行的七个级别
0 关机
1 单用户,可以看做win中的安全模式,用来做系统修复
2 不完全多用户,不含NFS服务(文件共享服务)
3 完全多用户,就是黑底白字的字符界面
4 未分配
5 图形界面
6 重启
init表示调用某个级别
使用runlevel来看系统到底运行在哪个级别,Mac OS不支持
通过cat /etc/inittab找到文件中的id:3:initdefault字段,修改数字,改变系统开机默认级别。但绝对不能设为0和6。

退出登录命令

logout

6.管道符

多命令顺序执行

多命令执行符 格式 作用
; 命令1 ; 命令2 多个命令顺序执行,命令之间没有任何逻辑联系
&& 命令1 && 命令2 逻辑与,命令1正确执行才会执行命令2,命令1不正确执行,则命令2不会执行
shift+\shift+\ 命令1 shift+\shift+\ 命令2 逻辑或,当命令1执行不正确,则命令2才会执行,当命令1正确执行,则命令2不会执行

*其中,shift+\意味着|
例如:date ; tar -zcvf etc.tar.gz /etc ; date可以计算中间打包压缩命令执行的耗时
再如,ls && echo yes || echo no,第一个命令正确执行,输出yes,错误执行,输出no

管道符

命令格式:命令1 | 命令2,有一定的编程思想在里面 命令1的正确输出作为命令2的操作对象,和逻辑与不一样
例子:

  • ls -l /etc | more代表将ls -l /etc的输出分屏显示
  • netstat -an | grep ESTABLISHED代表搜索netstat -an输出中带有ESTABLISHED的行
    如果再变成netstat -an | grep ESTABLISHED | wc -l,此为多管道符命令,代表到最后统计带有ESTABLISHED的行的数目,即可看出服务器上连接了多少人
  • 如果原本使用cat输出的内容中有很多重复,可在后面加上|uniq去重

7.脚本的执行方法

echo输出命令

echo【选项】【输出内容】
echo "cangls he bols ni xi huan na yi ge?"只要输出的内容里有空格就需要加双引号
选项-e ,表示支持反义字符

echo所能支持的反义字符(也可以用在Python里)

反义字符 作用
\a 输出警告音
\b 退格键,也就是向左删除键
\n 换行符
\r 回车键
\t 制表符,也就是Tab键
\v 垂直制表符
\0nnn 按照八进制ASCⅡ码表输出字符。其中0为数字零,nnn是三位八进制数
\xhh 按照十六进制ASCⅡ码表输出字符。其中hh是两位十六进制数

举个例子:echo -e "\x68\x65\x6c\x6c\x6f",手动输入字符的十六进制ASCⅡ码值,输出就是hello
Linux本机的纯字符界面是不支持中文的!
另外,在XShell这样的远程工具界面上是可以支持颜色显示的,如echo -e "\e[1;31m 嫁人就要嫁凤姐 \e[0m",其中的\e[1;31m是开启颜色,\e[0m是关闭颜色,31m表示红色,可以支持的颜色从30到37

第一个脚本

vim hello.sh
#!/bin/bash
#注释
echo -e "\e[1;34m 天上掉下个林妹妹 \e[0m"

脚本执行

  • 赋予执行权限,调用脚本
    chmod 755 hello.sh
    ./hello/sh #相对路径
  • 通过Bash直接执行脚本
    bash hello.sh

8.历史命令

历史命令

history 【选项】【历史命令保存文件】
选项:
-c 清空历史命令
-w 把缓存中的历史命令写入历史命令保存文件~/.bash_history
历史命令默认会保存1000条,可以在环境变量配置文件/etc/profile中进行修改HISTSIZE=1000

历史命令的调用

  • 使用上下箭头调用以前的历史命令
  • 使用!n重复执行第n条命令
  • 使用!!重复执行上一条命令
  • 使用!字串重复执行最后一条以该字串开头的命令

命令与文件补全

在Bash中,命令与文件补全是非常方便与常用的功能我们只要在输入命令或文件时,按Tab键就会自动进行补全

9.链接命令

链接命令

ln -s 【原文件】【目标目录】
功能是生成链接文件
-s 创建软链接

硬链接的特征

  1. 硬链接拥有相同的i节点和存储block块,可看做是同一个文件
  2. 可通过i节点识别
  3. 不能跨分区
  4. 不能针对目录使用
ln desktop/Learning_Python/hello_world.py documents/hello_world.hard

ls -l desktop/Learning_Python/hello_world.py
-rw-r--r--  2 Jeff  staff  3379  3 14 10:30 desktop/Learning_Python/hello_world.py

ls -l documents/hello_world.hard
-rw-r--r--  2 Jeff  staff  3379  3 14 10:30 documents/hello_world.hard

ls -i desktop/Learning_Python/hello_world.py documents/hello_world.hard
2231081 desktop/Learning_Python/hello_world.py
2231081 documents/hello_world.hard

软链接的特征

  1. 类似于win下的快捷方式
  2. 软链接拥有自己的i节点和block块,但数据块中只保存原文件的文件名和i节点号,并没有实际的文件数据
  3. Irwxrwxrwx I软链接 软链接文件的权限都是rwxrwxrwx
  4. 修改任意文件,另一个都改变
  5. 删除原文件,软链接不能使用

10.命令格式

[root@localhost ~]#

root段代表当前用户,localhost是主机名
如果是超级用户,当前目录为/root根目录,如果是普通用户user1,则为/home/user1
#表示当前用户位超级用户,$则为普通用户

格式:命令 【选项】【参数】

查询目录内容命令

ls 【选项】【目录/文件】

ls -l ~/desktop
[email protected]  3 Jeff  staff    102  3  8 11:08 $RECYCLE.BIN
drwxr-xr-x   6 Jeff  staff    204  4  9 16:13 A*算法
drwxr-xr-x  10 Jeff  staff    340  4  9 16:14 Learning_Python
-rw-r--r--   1 Jeff  staff   1441  3 30 11:43 SSH设置
-rw-r[email protected]  1 Jeff  staff  48640  3  8 11:08 Thumbs.db
drwxr-xr-x  10 Jeff  staff    340  4  9 18:07 myBooks
drwxr-xr-x  10 Jeff  staff    340  4 10 11:02 毕业规范
-rw-r[email protected]  1 Jeff  staff   6313  4  8 21:36 实习小结.md

-l 显示详细信息
权限10位 -rw-r—r—
第1位代表文件类型: -文件 d目录 l软链接文件
rw- u所有者 班级
r-- g所属组 美眉
r-- o其他人 大老爷们傻和尚
rwx执行
3,6,10这些数字代表引用计数
102,204,340这些数字代表字节大小,改用ls -lh就变成kB,易于阅读

ls -a ~/desktop
$RECYCLE.BIN	.DS_Store	Learning_Python	myBooks
.		.localized	SSH设置		毕业规范
..		A*算法		Thumbs.db	实习小结.md

-a 显示所有文件,包括隐藏文件
-la 详细显示所有文件

ls -ld ~/desktop
drwx------+ 12 Jeff  staff  408  4 10 17:07 /Users/Jeff/desktop

-d 显示目录属性
-ld 详细显示目录属性

对目录如果没有w权限,即使里面的文件有写权限,也不能对文件进行移动,重命名操作,此时,需要给目录加上w权限:chmod +w(注意此时cwd是此目录)

时间: 2024-10-15 13:54:38

linux基础(1-10)的相关文章

linux基础学习-10.4-正则表达式练习题

一.基础正则 环境准备 [[email protected] oldboy]# cat /oldboy/re.txt I am oldboy teacher! I teach linux. I like badminton ball ,billiard ball and chinese chess! my blog is http://oldboy.blog.51cto.com our size is http://blog.oldboyedu.com my qq is 49000448 not

linux基础学习-10.3-正则表达式详解

一.正则表达式 RE regular expression 1.什么是正则 为何用它? 你可以通过什么方法选出这里面的身份证号码. 440304199604012792 130528197108126121 3605sss98304033896 342923198310042132 1404ddddddddd5694X 61242619860416291X 5002xxxxxx04279521 330900199806382320 654126197703092303 1311271971051

linux基础:10、基础命令(4)

查询文件类型与文件位置命令) file 作用:查看文件类型(linux下的文件类型不以后缀名区分) 语法:file [选项] filename ================================================================================= [[email protected] ~]# file /etc/passwd /etc/passwd: ASCII text              #文本文档 [[email prote

linux基础篇-10,权限管理chown chgrp chmod umask

linux用户及权限详解 权限管理 chown chgrp chmod umask ################################################ chown:修改属主 -R:修改目录及其内部的属组 --reference chown USERNAME:GRPNAME file 同时修改属主属组 [[email protected] ~]# chown jameszhan:root /tmp/tmp.txt ###########################

linux基础学习-10.2-通配符回顾

1. * 所有 任何东西 以.txt结尾 *.txt 以.log结尾 *.log 系统中以ls开头的文件. find / -type f -name "ls*" 找出系统中文件名包含oldboy的文件. find / -type f -name "*oldboy*" 2.{} 生成序列 echo {1..10} echo {10..1} echo {01..10} echo {01..100} echo {a..c} echo {a..z} echo {A..Z}

linux基础练习10

1.实现sshd免密登录 ssh服务默认安装系统的时候会自动安装,即使最小化安装也会安装,可以不用我们手动安装,需要实现ssh服务免密登录需要生产秘钥对 客户端上生成的公钥拷贝至服务端后,当客户端在发送连接请求后,服务端得到客户端的请求后,会在authorized_key文件中查找公钥,如果有响应的ip和用户,就会随机生成一个字符串,服务端将生成的随机字符串利用拷贝过来的公钥加密之后发送给客户端,客户端会利用自己的私钥进行解密,解密完的字符串在发回给服务端,服务端跟之前的字符串进行比对,如果一致

2016-2-4 linux 基础学习10

管道和重定向:> < << >> 计算机5大设备:运算器.控制器(CPU).存储器(RAM).输入设备.输出设备  程序:指令和数据地址总线:内存寻址数据总线:传输数据控制总线:控制指令寄存器:CPU暂时存储器 I/O设备:    INPUT设备:    OUTPUT设备:系统设定    默认输出设备:标准输出,STDOUT, 1    默认输入设备:标准输入,STFIN,  0    标准错误输出:STDERR, 2         标准输出:键盘    标准输出和错

Linux基础(10)论grep 与egrep的区别

egrep或者grep -E与grep相比进行文本匹配的时候使用的扩展的正则表达式,那么扩展的正则表达式与正则表达式有什么区别呢? 1基本的正则表达式: 字符匹配: .: 任意单个字符 []: 某一字符集中的单个字符  例如[0-9]表示任意个位数 [^]:不属于某一字符集中的单个字符 例如[^[:space:]]表示任意非空白字符 次数匹配: *:任意次 \?: 0或1次 \{m,n\}:至少m次,至多n次: .*: 任意长度的任意字符 锚定: ^: 行首锚定 $: 行尾锚定 \<, \b:词

linux基础学习-10.1-特殊符号-分类讲解

1.重定向符号 01.> 输出重定向 先清空文件,追加 02.>> 追加输出重定向 追加 03.< 输入重定向 与 xargs tr 04.<< 追加输入重定向 cat 向一个文件追加多行. cat >>/oldboy/alex.txt<<EOF Love me, love my dog. Love Li, love li's dog. EOF 2. 表示位置的 01. .(点) 当前目录 02. .. 当前目录上一级目录 03. ~ 当前用户的

Linux基础命令(之一)详解

Linux基础命令(之一)详解 学习linux的朋友都知道,系统大多数操作都是命令行的操作方式,当然如今也有图形化界面的操作方式,但是多数情况下仍然使用命令的操作模式,所以命令的作用与用法是成为学好.学会Linux系统的必备前提,也是重点之一,所以今天来聊一聊一些基础命令的用法与其作用. 1.系统关机或重启命令(小白也必须要会的) shutdown (win 系统也有) 常用参数:shutdown -h (halt) 直接关机(关闭电源) shutdown -h  now[+10]    现在关