linux基础与c高级

目录

常用linux——shell命令

管道链接字符

shell语言——解释型语言

其他常用关键字


常用linux——shell命令

find  指定目录  指定条件  搜索内容
-name 按名字查找;
-size 按大小查找;
-inum 按iNode查找;
-type 按类型查找;

whereis
-b    查找二进制文件;
-m    说明文件;
ls    查看别名;

grep  抓取指定字段
格式:grep  字段名  文件名;
-n 显示行号;
-v 反查;
-c 查含有匹配字段行数;
-e 多字段查询、多模式;
"^字段"   开头为字段的行;
"字段$"   结尾为字段的行;
"^字段$"  只含有字段的行;

管道链接字符

|——管道链接字符——链接两个命令
将前一个命令的结果作为后命令的输入;

dmesy——设备链接信息;
wc——统计文件中的行数,单词个数,大小;
-l   只显示行数;
-w   只显示单词数;
-c   只显示文件大小;

cut -d "分隔符号" -f 1,2,3,.. 文件名;

echo 用于打印shell变量的值或者直接输出字符串
注:echo 后不接任何选项时候输出一行空白行
-n   输出文字后不换行;
$变量名  输出变量的值;
$((整数运算)) 进行整数运算;

输出重定向
标准重定向:
1>  例如:hello 1> hello.c;

错误重定向:
2>  例如:错误命令 2> test.txt;
将错误命令报告写入test.txt中;
追加——>>;

shell的通配符:
*   任意长度字符串;
?  一个长度字符串;
[...]指定字符;
[1-4]指定范围;
[^...]匹配除去指定字符;
{...}生成序列——例如:touch hello{1..9}.c;
创建hello1.c....hello9.c;

shutdowm——关机
shutdown    一分钟后关机;
-h now      立刻关机;
-h +30      三十分钟后关机;
-h 20:35    指定时间关机;
-r          重启;
--------------------------------------------
reboot      立即重启;
poweroff    立即关机;
su          切换用户(exit退出当前用户)

通过shell的通配符号来进行ls 所查文件部分信息+通配符号 ——查找所需

密码修改:
sudo passwd 用户名;

增加用户:
adduser;

删除用户:
deluser 用户名;
deluser --remove-home删除用户名及全部组;

ps——静态进程
-ef     显示进程
UID PID PPID C STIME TTY TIME CMD
-aux    显示进程
USER PID %CPU %MEM VSZ RSS TTY STAT START   TIME COMMAND
——————————————————————
top——动态进程
PID USER PR NI VIRT RES SHR S %CPU %MEM     TIME+ COMMAND 
——————————————————————
kill  -9       杀死进程
killall 进程名 结束进程
进程名 &       后台运行
——————————————————————
文件权限修改
chmod 777 文件名——通过权限数字改变权限
chmod u/g/o +(-)r/w/x 改变权限
——————————————————————
chown 用户名——更换所有者;
umask           权限掩码;

zip  压缩文件名 需要压缩文件
-r   压缩目录
(保留原文件)
unzip 解压
————————————————————
gzip 需要压缩文件名
(不保留原文件)
gunzip 解压
————————————————————
bzip2 需要压缩文件名
(不保留原文件)
bunzip  解压
————————————————————
tar——打包
c—创建
v—显示过程
x—释放、解压
z—gzip操作
j—bzip操作
f—指定文件名(置于最后)

-C  指定解压地址
————————————————————
共享文件创建及路径为:/mnt/hgfs

df  -TH   查看磁盘空间
mount     挂载
umount    卸载
clear     清屏
history   历史命令
date      系统时间
alias     命令别名
unalias   取消命令别名
export    提升变量为环境变量
——————————————————————

shell语言——解释型语言

1、基本过程:
step1:创建文件,后缀为.sh
step2: chmod 修改权限
step3:执行./文件.sh

2、文件编辑开头为:
#!/bin/bash——指定编译器
——————————————————————
`命令`——可作为值赋予变量
双引号——传参时内部字符串默认为一个参数
变量——shell中变量一般大写表示,且赋值时等号两边不能输入空格

3、shell中变量类型:

1.用户自定义变量;
2.位置变量;
3.预定义变量;
4.环境变量;

export  PATH=$PATH:/当前目录
临时改变环境变量;当终端关闭后自动取消

4、变量调用通过——$
set            查看已经定义的变量;
unset          删除变量赋值;
$0             脚本文件名;
$1             第一个参数;
$2             第二个参数;
$3             第三个参数;
...
$9             第九个参数;
${10}          第十个参数;
————————————————————
5、常用变量调用
$@        包含所有命令行参数(作为单参)
$*        同上
"$*"      包含所有命令行参数(表示一个整         
          体)
$#        命令行参数个数
$$        正执行进程的ID
$?       前一个命令的退出结果
         (0为正确输出,非0位错误输出)

其他常用关键字

sort——排序显示
-f    忽略大小写
-b    忽略最前面的空格
-M    以月份的名称来排序
-n    使用纯数字排序
-r    反向排序
-u    相同的只显示第一行
-k    指定排序字段

tr [-cds] [第一字符集][第二字符集]
-c      取代所有不属于第一字符集的字符
-d      删除所有属于第一字符集的字符
-s      把连续重复的字符以单独一个字符表示

\<字符字码>——表示使用3位八进制字码指定字符
<1字符>-<2字符>——1字符-2字符之间所有字符
<字符>*<重复次数>——表示重复指定字符
alnum   表示所有字母和数字;
alpha   表示所有字符;
cntrl   表示所有控制字符;
digit   表示所有数字;
lower   表示所有小写字符;
print   表示包括空格在内的所有打印字符;
graph   表示不包括空格在内的所有打印字符
upper   表示所有大写字符;
xdigit  表示所有十六进制数字;
space   表示所有垂直与水平空格符;

cat word.txt | tr a-z A-Z
将word.txt文件中内容全部以大写形式输出
(cat worx.txt | tr lower upper)

bash shell中进行变量运算时候:
运算符号两边要加空格,否者视为字符串连接
且运算时候需要使用awk或expr

例如:
a=10
b=20
val=`expr $a + $b`
echo $val

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

yh_lhn_20

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

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

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

打赏作者

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

抵扣说明:

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

余额充值