linux shell学习笔记

本文详细介绍Linux系统的用户管理、目录结构、文件操作、文本处理、编辑器使用、链接概念、关机操作、帮助文档查阅、Shell脚本编写等核心内容。涵盖基本命令如ls、cd、rm、cp、mv等,以及高级功能如管道、重定向、变量、条件语句和循环语句。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

linux 内核

linux 完整系统:linux kernel; free software; documentation.

 

2-1   linux用户切换与创建

2-2  shell快捷键

ctrl+a/e 光标移到开头/结尾

ctrl+u/k 消除光标前/后内容

ctrl+r 搜索历史记录

ctrl+l 清屏

history 

 !【number】 重复执行第number条命令

 

2-3 linux目录结构

ls -d 只查看目录信息

ls -l 查看详细信息

ls -a 显示隐藏文件

ls -h 显示文件大小

组合: ls -dl

 

2-4 

cd - 返回之前目录

cd .. 返回上级目录

     .  当前目录

绝对路径和相对路径

命令 touch

 

2-5 目录结构

/boot 启动文件              /var 数据文件

/dev 设备文件               /usr 用户软件

/etc 配置文件                /srv 压缩文件

/home 家目录/用户       /bin 软链接、快捷方式

/media 媒体 文件          /mnt 挂载文件

/opt 第三方软件            /proc 虚拟化文件

/root 管理员家目录        /run 进程文件

 

2-6 文件处理操作

ls -l 

列显示d 是目录;列显示- 是文件;

列显示l 是软链接/快捷方式;列显示b 是硬盘文件/接口;列显示c 是串行接口(键盘)

 

mv 移动文件命令

cp -f 复制文件

cp -r 复制目录

rm -r 删除目录

rm -i 删除前逐一确认

rm -f 直接删除原文档,无需逐个确认

rm -r * 删除当前目录下的所有文件及目录

rm .* 删除隐藏文件

rm -rf 删除当前目录下的所有文件及目录,无需逐一确认

mkdir -p ...   递归式创建目录

cp -r ...   递归式复制目录

 

2-10 文件查看

cat -A = cat -VET x显示不可打印字符,行尾显示“$”

cat -n 列出行号,包括空白行

cat -b 列出行号,不包括空白行

cat -e 断行字符

cat -t 缩进以 ^I 显示

cat -v 列出特殊字符

 

$ cat > d.txt  #从键盘创建一个文件

$ cat c.txt d.txt > e.txt #将几个文件合并为一个文件

$ cat test1 test2 test3 | sort > test4 #按排序合并几个文件

$ cat e.txt #显示一个文件的内容

$ cat e.txt a.txt #显示多个文件的内容

$ cat -n e.txt > a.txt #将一个文件的内容加上行号后覆盖到另一个文件里

$ cat -n e.txt >> a.txt #将一个文件的内容加上行号后在另一文件尾部追加

$ cat e.txt > a.txt #复制e.txt成a.txt

$ cat e.txt | less

$ cat e.txt | more #解决输出端子屏幕滚动快慢问题

$ cat /dev/null > /etc/test.txt #清空/etc/test.txt文档内容

 

$ tac  e.txt 反序输出文件内容

 

nl 命令在linux系统中用来计算文件中的行号,可以将输出文件内容自动的加上行号

nl -bt 空不列出行号

nl -ba 空也列出行号

nl -n 列出行号的表示方法

 

more

空格 下翻一页

回车 下一行

/字符串 搜索

b: 翻到第一页

:f 显示文件名和行数

q 离开

 

less

空格 翻动一页(pagedown/pageup)

/字符串 向上搜索功能

?字符串 向下搜素功能

 

head, tail 显示文件头几行/尾几行

head -n 5 文件名 显示到第5行

日志文件: /var/log/messages   如何查看最新日志文件

 

wc: 显示文件行数,字数,字节

wc -c 统计字节数           wc -w 统计字数

wc -l 统计行数               wc -L 打印最长行的长度

wc -m 统计字符数          wc -cl

 

2-13 vim编辑器

i 插入     v 选择文本

u 撤销     y 复制

x 删除     yy 复制当前行

dd 删除光标所在行

p 粘贴

 

2-15 gedit/emacs

C(一般指ctrl键)+<chr>

M(一般指alt键)+<chr>

C-x C-f 文件名   打开文件

C-x C-s   保存文件

C-x C-c   退出Emacs

C-x u   取消上一次操作(即ctrl-x后收手,再按键盘u键)

C-h t   打开帮助文档

 

2-16 链接

软链接=快捷方式

创建软链接: ln -s oldfile newfile

创建硬链接: link oldfile newfile

                       ln oldfile newfile

 

2-17 硬链接

Inode编号:给机器看     ls -l -i 以长格式形式查看当前目录下所有可见文件的详细属性

文件名:给人看

 

硬链接:多个文件对应一个inode编号,对多个文件中的某一个文件修改以后,其他文件也被更改

 

2-18 关机操作 shutdown

sync 将数据同步写入磁盘

shutdown -t 设定几秒后关机

shutdown -k 设定发出警告信息

shutdown -r/-h 系统服务停止后,重启/关机

shutdown -f 关机、开机,强行略过磁盘检查

shutdown -F 重启,强制进行磁盘检查

shutdown -c 取消之前进行的shutdown指令内容

 

init 0 关机

init 6 重启

init 3 纯文本形式启动

init 5 含图形接口形式启动

 

2-19 man命令

man 1 用户命令   man 2 系统调用

man 3 库函数   man 4 特殊文件   man 5 文件格式

d 往下滚动半个屏幕   u 往上滚动半个屏幕

n 向下搜索   N 向上搜索

g 显示开头   G 显示结尾

 

pinfo

帮助文档查看路径: /usr/share/doc

 

11-1 shell 脚本

命令别名设定 alias     ld='ll -h'

11-2 bash shell

11-3

.sh   #!   可执行脚本

#! /bin/bash/   解释器

11-4 变量(大写)

预设变量 SHELL PATH

echo:读取变量;输出语句

$ 调用变量

变量:普通变量;环境变量

11-5 普通变量

NAME=lewis

echo $NAME

unset NAME

echo $NAME

 

环境变量:系统预定义的参数

临时:export声明,关闭shell失效

            export 变量名=值

 

11-6 临时 - export命令

# export B=5

# echo $B

# sh     切换shell

# echo $B

 

su lewis [su 切换用户]

su -lewis 切换了shell,真正意义上的切换用户

 

11-7 位置变量

全局变量:/etc/bashrc     /etc/profile

用户变量:~/.bashrc     ~/.bash_profile

配置举例:

echo 'export A=12345'  >>  /etc/bashrc

source /etc/bashrc

./etc/bashrc

 

位置变量:用数字表示的变量

$0 表示脚本的名称                        $* 代表所有参数内容   

$1 该脚本的第一个参数                 $$ 当前进程的IO号码

$2 改脚本的第二个参数                 $# 当前shell的参数个数

$? 程序退出的代表(0)                    $@ 所有参数内容(逐个读取)  

 

11-8 转移字符

\ '' ""

\   可以消除...      echo #123

                            echo \#123

单引号屏蔽所有字符

双引号屏蔽 $... 符号以外的所有特殊字符      echo '#123 #abc $A'

                                                                       echo "#123 #abc $A"

 

11-9 case语句

3.sh

#! /bin/bash

case "$1" in

1)

echo please input 2

;;

2)

echo please input 1

;;

*)

echo ./3.sh please input 1 or 2

;;

esac

 

11-10 read 函数:用于从标准输入读取数值

例:

echo "请输入姓名: "

read NAME

echo "你输入的姓名是 $NAME"

exit 0   #退出

 

11-11 if/then 条件语句

1、整数测试:数值比较                  2.bash字符测试

-eq 等于                                              > 大于   

-ne 不等于                                          < 小于

-gt 大于                                               == 等于

-lt 小于

-ge 大于等于

-le 小于等于

 

3、字符操作     文件路径

-f 是否是普通文件

-d 是否是目录文件

-e 文件是否存在

-r 文件是否可读

-w 文件是否可写

-x 文件是否可执行

-s 文件大小是否不空

 

4、逻辑

逻辑判断 

-a 与              与运算 &&

-o 或              或运算 ||

! 非              否运算 !

                 

if/then 条件语句

单分支语句;双分支语句;多分支语句

 

11-6 循环语句

for——shell 风格

for 变量 in {list}

do

命令

done

 

for——c 风格

for ((i=0;i<=10;i++));   #第一个括号做表达式运算,第二个括号做for循环

do

sum=$((sum+i))   #第一个括号做运算,第二个括号拿值

done

echo $sum

 

source 执行修改的文件,使之立即生效

$@ 所有参数

$# 所有参数个数

echo 字符串输出

 

#! /bin/bash     是一个约定的标记,表示用什么解释器执行

grep    查找内容(包含指定范本样式的文件) 

 

shell 脚本行注释   # ...

                块注释 —— : 空格 ' 注释内容 '

 

待更 20190212 

参考:http://www.51zxw.net/list.aspx?cid=644

           http://www.runoob.com/linux/linux-shell.html

 

 

 

 

内容概要:该PPT详细介绍了企业架构设计的方法论,涵盖业务架构、数据架构、应用架构和技术架构四大核心模块。首先分析了企业架构现状,包括业务、数据、应用和技术四大架构的内容和关系,明确了企业架构设计的重要性。接着,阐述了新版企业架构总体框架(CSG-EAF 2.0)的形成过程,强调其融合了传统架构设计(TOGAF)和领域驱动设计(DDD)的优势,以适应数字化转型需求。业务架构部分通过梳理企业级和专业级价值流,细化业务能力、流程和对象,确保业务战略的有效落地。数据架构部分则遵循五大原则,确保数据的准确、一致和高效使用。应用架构方面,提出了分层解耦和服务化的设计原则,以提高灵活性和响应速度。最后,技术架构部分围绕技术框架、组件、平台和部署节点进行了详细设计,确保技术架构的稳定性和扩展性。 适合人群:适用于具有一定企业架构设计经验的IT架构师、项目经理和业务分析师,特别是那些希望深入了解如何将企业架构设计与数字化转型相结合的专业人士。 使用场景及目标:①帮助企业和组织梳理业务流程,优化业务能力,实现战略目标;②指导数据管理和应用开发,确保数据的一致性和应用的高效性;③为技术选型和系统部署提供科学依据,确保技术架构的稳定性和扩展性。 阅读建议:此资源内容详尽,涵盖企业架构设计的各个方面。建议读者在学习过程中,结合实际案例进行理解和实践,重点关注各架构模块之间的关联和协同,以便更好地应用于实际工作中。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

蜡木浦

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

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

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

打赏作者

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

抵扣说明:

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

余额充值