Loading

Linux与Shell编程复习笔记

Linux

Linux文件和目录结构

  • / 根目录
  • /etc 供系统维护管理用的命令和配置文件
  • /tmp 存放临时文件
  • /boot 存放系统引导文件
  • /bin 系统常用命令,如ls, ln, cp, cat等
  • /home 用户目录
  • /root 超级管理员目录
  • /dev 存放设备文件
  • /usr
    • /usr/include C语言头文件存放目录
    • /usr/tmp 存放临时文件
    • /usr/bin 存放常用命令,如echo, grep, kill
    • /lib,/usr/lib 存放各种库文件,指C语言的链接库文件,以及terminfo终端库等等

文件通配符和文件类型

  • * 可执行普通文件
  • / 目录
  • @ 符号链接
  • | FIFOs
  • = 套接字
  • - 普通文件
  • p 目录文件
  • b/c 设备文件
  • l 链接文件
  • p 管道文件

Command

cat

  • -n 编号
  • -b 空白行不编号
  • -s 压缩连续空行

ls

  • -a 全部信息
  • -l 长信息
  • -F 附加文件类型

more

  • -d 提示
  • -f 计算实际显示行数
  • -s 合并显示空行
  • +/pattern 搜索字串并在此之后开始显示
  • -num 每行显示的行数
  • +num 从num行开始显示

  • space/n 下一屏
  • b 上一屏
  • enter 下一行
  • /pattern 搜索

less

  • -a 最后一页
  • -m 百分比
  • -M 百分比 行号 总行数
  • -N 行号
  • -p test 搜索test
  • -s 合并显示空行
  • -num

tail

  • -num

cp

  • -a = cp -drp
  • -d 保留文件链接
  • -f 强制执行
  • -i 交互提醒
  • -p 更新修改日期与访问权限
  • -r 递归复制文件树
  • -v 可视化操作
  • -l 不复制而只产生硬链接
  • -s 不复制而只产生软链接

mv

  • mv -i 交互提醒
  • -f 强制执行

rm

  • -r 递归删除文件夹
  • -f 强制执行
  • -i 交互提醒

sort

  • -m 合并排序
  • -n 以数值形式排序
  • -d 字典序(default)
  • -r 逆序
  • -t 'char' 选定分割字符
  • -u 保留唯一键值(去重)
  • -k 选定排序键值(1.1,2/1.1,1.1)
  • -o 输出到文件
  • 多指令可合并执行

diff

  • -b 忽略空格
  • -c 上下文格式显示
  • -C num 显示num行上下文

  • <为删除
  • >为新增

touch

mkdir

  • -p 帮助确保目录全部存在,如果不存在就新建

rmdir

tar

  • -c 打包
  • -x 解包
  • -v 可视化
  • -f 不交互
  • -z 对文件进行压缩
  • -czvf 压缩
  • -tzvf 列出压缩内容
  • -xzvf 解压

ln

  • ln 硬链接
  • -s 软链接

VIM

image
KeyBind

CMake

makefile示例

build: clean main

mymath.o: include/mymath.h src/mymath.c
        gcc -fPIC src/mymath.c -I./include -c -o src/mymath.o

welcome.o: include/welcome.h src/welcome.c
        gcc -fPIC src/welcome.c -I./include -c -o src/welcome.o

libtest.so: mymath.o welcome.o lib
        gcc -shared -o lib/libtest.so src/*.o

lib:
        mkdir -p ./lib

main: libtest.so main.c
        gcc main.c -o main -I./include lib/libtest.so

clean:
        rm -f src/*.o
        rm -rf lib
        rm -f main

.PHONY: clean build
posted @ 2022-04-06 16:02  Do1phln  阅读(15)  评论(0)    收藏  举报