当前位置:   article > 正文

Linux知识点

Linux知识点

常用的Linux指令

查看当前进程:ps

执行退出:exit

查看当前路径指令:pwd

列出指定目录中的目录,以及文件:ls
ls指令的参数:

  • -a显示所有文件以及目录(.开头的隐藏文件也会列出)
  • -l除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
  • -r 将文件以相反次序显示(原定依英文字母次序)
  • -t 将文件依建立时间之先后次序列出
  • -A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)
  • -F 在列出的文件名称后加一符号;例如可执行档则加 “*”, 目录则加 “/”
  • -R 若目录下有文件,则以下之文件亦皆依序列出

创建目录:mkdir

mkdir runoob #在工作目录下,建立一个名为 runoob 的子目录
mkdir -p runoob2/test #在工作目录下的 runoob2 目录中,建立一个名为 test 的子目录。若 runoob2 目录原本不存在,则建立一个。(注:本例若不加 -p 参数,且原本 runoob2 目录不存在,则产生错误。)	
  • 1
  • 2

创建文件:

  1. vi或者vim

     vi file1.txt #直接创建并打开一个文件file1.txt
    
    • 1
  2. touch

    touch file2.txt
    
    • 1
  3. echo

    echo "this is a new file" > file3.txt #创建文件file3.txt并将this is a new file写入(说明:使用>指令覆盖文件原内容并重新输入内容,若文件不存在则创建文件。)
    echo "add contents" >>file3.txt #在已存在的文件补充写入新内容add contents(说明:使用>>指令向文件追加内容,原内容将保存。)
    
    • 1
    • 2
  4. lessmorecat

    cat 1.txt > 2.txt
    less 1.txt > 3.txt
    more 1.txt > 4.txt
    
    #三者都是将文件内容输出到标准输出,其中less和more可以分页显示,cat是显示全部。三者可以根据已经存在的文件创建新的文件。假设已经存在文件1.txt。
    
    • 1
    • 2
    • 3
    • 4
    • 5
  5. cd

    cd > file3.txt #创建新的空文件file3.txt
    cd >> file4.txt #创建新的空文件file4.txt
    
    • 1
    • 2

    复制文件的指令:cp

    cp –r test/ newtest #将当前目录 test/ 下的所有文件复制到新目录 newtest 下
    
    • 1

    查看文件内容的指令:

    vi 文件名 #编辑方式查看,可修改
    cat 文件名 #显示全部文件内容
    more 文件名 #分页显示文件内容
    less 文件名 #与 more 相似,更好的是可以往前翻页
    tail 文件名 #仅查看尾部,还可以指定行数
    head 文件名 #仅查看头部,还可以指定行数
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    移动文件的命令以及更改文件名的命令:

    mv source_file(文件) dest_file(文件) #将源文件名 source_file 改为目标文件名dest_file
    mv source_file(文件) dest_directory(目录) #将文件 source_file 移动到目标目录dest_directory 中
    
    • 1
    • 2

    删除文件命令:

    rm -rf file/directory #删除当前目录下的所有文件及目录,并且是直接删除,无须逐一确认
    rm -rf directory/ #删除目录 directory,不管该目录下是否有子目录或文件
    
    • 1
    • 2

    查找文件内容用那个命令:

    grep test *file #在当前目录中,查找后缀有 file 字样的文件中包含 test 字符串的文件,并打印出该字符串的行
    grep -r update /etc/acpi #查找指定目录/etc/acpi 及其子目录(如果存在子目录的话)下所有文件中包含字符串"update"的文件
    grep -v test *test* #查找文件名中包含 test 的文件中不包含test 的行
    
    • 1
    • 2
    • 3

    查找文件用那个命令:

    find . -name "*.c" #将当前目录及其子目录下所有文件后缀为 .c 的文件列出来
    find . -ctime -20 #将当前目录及其子目录下所有最近 20 天内更新过的文件列出
    
    • 1
    • 2

    cat命令:

    cat -n textfile1 #把 textfile1 的文档内容加上行号后输入到屏幕
    cat -n textfile1 > textfile2 #把 textfile1 的文档内容加上行号后输入 textfile2 这个文档里
    cat -b textfile1 textfile2 >> textfile3 #把 textfile1 和 textfile2 的文档内容加上行号(空白行不加)之后将内容附加到 textfile3 文档里
    cat /dev/null > /etc/test.txt #清空 /etc/test.txt 文档内容
    
    • 1
    • 2
    • 3
    • 4

常用的GCC指令

预处理 -E
gcc -E test.c -o test.i #把预处理的结果导出到test.i文件
  • 1
编译为汇编代码 -S
gcc -S test.i -o test.s #编译器将test.i翻译成汇编语言,并将结果存储在test.s文件中
  • 1
汇编 -C
gcc -S test.i -o test.s #编译器将test.i翻译成汇编语言,并将结果存储在test.s文件中
  • 1
链接 -O
gcc test.o -o test #将生成的目标文件test.o生成最终的可执行文件test
  • 1
一步到位编译
gcc test.c -o test #将源文件test.c编译链接为可执行文件test
  • 1
多文件编译
gcc test1.c test2.c -o test	
  • 1
警告处理
gcc -w test.c -o test # 忽略编译时的警告
gcc -Wall test.c -o test #编译后显示所有警告
gcc -Werror test.c -o test #在产生警告的地方停止编译
  • 1
  • 2
  • 3

常用的GDB调试指令

gcc -g test.c -o test #编译时生成debug有关的程序信
gdb test #启动调试
help #查看命令帮助,具体命令查询在gdb中输入help + 命令,简写h
run #重新开始运行文件(run-text:加载文本文件,run-bin:加载二进制文件),简写r
start #单步执行,运行程序,停在第一执行语句
list #查看原代码(list-n,从第n行开始查看代码。list+ 函数名:查看具体函数),简写l
set #设置变量的值
next #单步调试(逐过程,函数直接执行),简写n
step #单步调试(逐语句:跳入自定义函数内部执行),简写s
backtrace #查看函数的调用的栈帧和层级关系,简写bt
frame #切换函数的栈帧,简写f
info #查看函数内部局部变量的数值,简写i
finish #结束当前函数,返回到函数调用点
continue #继续运行,简写c
print #打印值及地址,简写p
quit #退出gdb,简写q
break+num #在第num行设置断点,简写b
info breakpoints #查看当前设置的所有断点
delete breakpoints num #删除第num个断点,简写d
display #追踪查看具体变量值
undisplay #取消追踪观察变量
watch #被设置观察点的变量发生修改时,打印显示
i watch #显示观察点
enable breakpoints #启用断点
disable breakpoints #禁用断点
x #查看内存x/20xw 显示20个单元,16进制,4字节每单元
run argv[1] argv[2] #调试时命令行传参
set follow-fork-mode child #Makefile项目管理:选择跟踪父子进程(fork())
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

常用的驱动开发指令

加载/卸载驱动
insmod/modprobe #加载驱动
rmmod #卸载驱动
  • 1
  • 2
Linux驱动如何查看驱动模块中打印信息?
dmesg
  • 1
如何查看内核中已有的字符设备的信息?
lsmod
  • 1
如何查看正在使用的那些中断号?
cat /proc/interrupt
  • 1

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/947137
推荐阅读
相关标签
  

闽ICP备14008679号