C语言-ubuntu下的命令

目录

linux命令

【1】打开关闭终端

【2】终端

【3】ls命令

[【4】cd 切换路径](#【4】cd 切换路径)

【5】新建

【6】删除

【7】复制

【8】移动

【9】常用快捷键

【10】vi编辑器

【11】简单编程步骤

任务:


linux命令

【1】打开关闭终端

打开终端:

  1. 直接点击

  2. ctrl alt t: 在家目录下打开终端

  3. ctrl shift n:在当前目录下打开终端

关闭终端:

  1. 直接关闭

2.ctrl d

  1. exit

【2】终端

~:家目录(路径名) /home/hq

查看用户名 :whoami

查看主机名 :hostname

查看当前路径 :pwd

【3】ls命令

功能:列出当前路径下所有文件

ls -a:查看当前路径下所有文件包括隐藏文件

ls -l:查看当前路径下所有文件的详细信息

bsp_lcd(7种文件类型)

b:块设备文件 存储设备(硬盘、sd卡) /dev/sd

s:套接字文件 网络套接字 《网络编程》

p:管道文件 进程间通信 《IO进程》

_:普通文件 .txt .c .h

l:软链接文件 类似于Windows的快捷方式 《linux高级》

c:字符设备文件 鼠标、键盘 /dev/input/mouse

d:目录文件 文件夹

修改权限命令:

chmod 权限值 文件名

chmod 745 22092

练习: 将Music文件夹的权限修改为当前用户可读可写不可执行,组内用户可写可执行,组外用户仅可读。

chmod -R 750 /path/to/Music -R表示递归

【4】cd 切换路径

cd 相对路径 :相对于当前路径开始索引

cd 绝对路径 :从根目录开始索引

. :表示当前路径(可以省略)

.. :表示上一级路径

回到上一级 :cd ..

回家目录 :cdcd ~cd /home/hq

切换到根目录 :cd /

回到上一次目录 :cd -

【5】新建

mkdir 目录名:新建目录

mkdir -p 目录1/目录2/目录3:创建具有层级关系的多个文件夹

mkdir 同名文件:报错,文件已存在

touch 普通文件名.后缀:新建普通文件

touch 同名文件:更新时间戳

【6】删除

rm 普通文件名:删除普通文件

rm -r 文件名:删除目录文件

rm -rf 文件名:强制删除文件

【7】复制

cp 普通文件名 目标路径:将普通文件复制到目标路径下

cp -r 文件夹名 目标路径:将目录文件复制到目标路径下

cp 普通文件名 路径/新文件名: 另存为

【8】移动

mv 普通文件名 目标路径: 将普通文件移动到目标路径下

mv 文件夹名 目标路径: 将文件夹移动到目标路径下

mv 原文件名 新文件名:重命名

练习:

1.在用户的家目录下,创建一个my-dir目录

2.将/etc下的passwd文件拷贝到my-dir目录下,并命名为farsight

3.将/etc下的groff目录拷贝到my-dir下,并重命名为hello

cpp 复制代码
cd
mkdir my-dir
cp /etc/passwd ./mydir/farsight
cp -r /etc/groff ./my-dir/hello

【9】常用快捷键

放大终端:ctrl shift +

缩小终端:ctrl -

清屏 :ctrl l 或 clear

查看历史命令:上下键

补全:tab

【10】vi编辑器

三种工作模式:

命令行模式:复制、粘贴、删除、光标移动

插入模式:文本编辑

底行模式:保存、退出、分屏、查找、替换

命令行模式:(输入的命令不显示)

单行复制 :yy

多行复制 :nyy(复制n行)

粘贴 :p

单行删除/剪切 :dd

多行删除/剪切 :ndd

撤销 :u

恢复 :ctrl r

光标移动首行 :gg

光标移动末行 :G

光标移动行首 :0

光标移动行尾 :$

整理代码格式 :gg = G

插入模式:

i :在当前光标所在位置之前插入文本

o :在当前行的下一行插入新行,并在新行上开始输入文本

a :在当前光标所在位置之后插入文本

I :在当前行的行首插入文本

O :在当前行的上一行插入新行,并在新行上开始输入文本

A :在当前行的行尾插入文本

底行模式:

保存:w

退出:q

保存并退出:wq

强制:

指定行复制:5,10y(复制5-10行)

指定行剪切:5,10d(删除5-10行)

分屏:vsp

查找:/str

替换:

s/str1/str2 将光标所在行第一个str1替换成str2

s/str1/str2/g 将光标所在行所有str1替换成str2

1,$s/str1/str2/g 将全文所有str1替换成str2

%s/str1/str2/g 将全文所有str1替换成str2

取消高亮:nohl

显示行号:set nu

取消行号:set nonu

【11】简单编程步骤

  1. 创建一个.c文件 touch hello.c

  2. 用vi编辑器打开文件 vi hello.c

  3. 编写代码

cpp 复制代码
#include//头文件
	int main( )//主函数
	{
		printf("hello\n");//打印语句   \n:表示换行
		return 0;
}
  1. 保存退出 esc 空格 wq

  2. 编译代码 gcc hello.c

  3. 执行可执行文件 ./a.out

任务:

  1. 建立test1、test2文件夹;在test1文件夹中建立1.txt文件,在1.txt中写上50行"hello farsight!",复制1.txt成为2.txt,并把2.txt中所有的"farsight"改成"world";移动test1文件夹到test2文件夹下;删除test1
cpp 复制代码
​​​​​​​//建立test1和test2文件夹:
mkdir test1
mkdir test2
//进入test1文件夹并创建1.txt文件,在其中写入50行"hello farsight!"
cd test1
echo "hello farsight!" > 1.txt
50yy
p
//复制1.txt文件为2.txt,并将其中的所有"farsight"替换为"world"
cp 1.txt ../test2/2.txt
cd 2.txt
%s/farsight/world/g
//移动test1文件夹到test2文件夹下
mv ../test1 ../test2/
//删除test1文件夹
rm -r ../test2/test1    
  1. 编写一个C程序输出以下信息
cpp 复制代码
#include <stdio.h>

int main() {
    printf("**********************\n");
    printf("Welcome to the game\n");
    printf("**********************\n");
    
    return 0;
}
相关推荐
小郭团队21 分钟前
1_7_五段式SVPWM (传统算法反正切+DPWM3)算法理论与 MATLAB 实现详解
开发语言·嵌入式硬件·算法·matlab·dsp开发
C+-C资深大佬42 分钟前
C++风格的命名转换
开发语言·c++
No0d1es44 分钟前
2025年粤港澳青少年信息学创新大赛 C++小学组复赛真题
开发语言·c++
点云SLAM1 小时前
C++内存泄漏检测之手动记录法(Manual Memory Tracking)
开发语言·c++·策略模式·内存泄漏检测·c++实战·new / delete
码上成长1 小时前
JavaScript 数组合并性能优化:扩展运算符 vs concat vs 循环 push
开发语言·javascript·ecmascript
打工的小王1 小时前
java并发编程(三)CAS
java·开发语言
油丶酸萝卜别吃1 小时前
Mapbox GL JS 表达式 (expression) 条件样式设置 完全指南
开发语言·javascript·ecmascript
爱吃大芒果1 小时前
Flutter for OpenHarmony前置知识:Dart 语法核心知识点总结(下)
开发语言·flutter·dart
Ulyanov2 小时前
从桌面到云端:构建Web三维战场指挥系统
开发语言·前端·python·tkinter·pyvista·gui开发
星火开发设计2 小时前
C++ 函数定义与调用:程序模块化的第一步
java·开发语言·c++·学习·函数·知识