当前位置: 首页 > news >正文

【Ubuntu】Ubuntu常用命令

文章目录

  • 网卡
  • 路由
  • 常用命令:
  • 编辑文件
    • echo
  • 权限设置
  • gcc编译器:

重启网络服务
sudo service network-manager restart

网卡

#查看网卡信息
ip a
#区分光网卡电网卡
sudo lshw -class network -businfo
ifconfig
ifconfig eth1 192.168.1.12/24 
#重启网卡
systemctl restart network

路由

route add eth1 default gw 192.168.1.0 metric 
route del

常用命令:

ll:文件属性 文件数 拥有者 所属的group 文件大小 建档日期 文件名 
cp -r 1/ 2 将目录1中的所有文件都复制到2
rm -rf
rm -I <目录名>  //这样做会删除指定目录中的所有子目录和包含的文件
cp ~/log_to_tum.py ./   //把要add的文件复制到本目录  

编辑文件

touch:创建空文件
cat:在终端打印出文本内容
vim[vim多行注释](https://blog.csdn.net/weixin_43944305/article/details/111993015)
gedit
code/nano/vi/vim:使用Visual Studio Code/Nano/vi/vim这四种编辑器,打开或者新建一个源代码文件

echo

echo >:输出重定向
echo >>:输出追加重定向
#将字符串hello A输出到屏幕
echo hello A
#创建tmp.txt,并将字符串输出到tmp.tx,如已存在tmp.txt,将tmp.txt内容替换成hello A 
echo hello A > tmp.txt
#当前目录存在tmp.txt,则将tmp.txt的内容后面追加hello B
echo hello C >> tmp.txt

权限设置

sudo chmod 777 ls /dev/ttyUSB0

gcc编译器:

http://c.biancheng.net/view/475.html
1.1.1 生成可执行程序
$ gcc main.c #在 gcc 命令后面紧跟源文件名,生成默认命名的.out文件
$ gcc main.c -o main.out#指定.out的文件名
不像 Windows,Linux 不以文件后缀来区分可执行文件,Linux 下的可执行文件后缀理论上可以是任意的,这里的.out只是用来表明它是 GCC 的输出文件。不管源文件的名字是什么,GCC 生成的可执行文件的默认名字始终是a.out。
1.1.2 运行可执行程序
$ ./a.out
./表示当前目录,整条命令的意思是运行当前目录下的 a.out 程序。如果不写./,Linux 会到系统路径下查找 a.out,而系统路径下显然不存在这个程序,所以会运行失败。
所谓系统路径,就是环境变量指定的路径,我们可以通过修改环境变量添加自己的路径,或者删除某个路径。很多时候,一条 Linux 命令对应一个可执行程序,如果执行命令时没有指明路径,那么就会到系统路径下查找对应的程序。
1.1.3 分步骤编译
上面讲解的是通过gcc命令一次性完成编译和链接的整个过程,这样最方便,大家在学习C语言的过程中一般都这么做。实际上,gcc命令也可以将编译和链接分开,每次只完成一项任务。
1.1.3.1 编译(Compile)
gcc -c main.c#将main.c 编译为 main.o,源文件编译成目标文件需要使用-c选项
源文件数目和目标文件数目是一样的。通常情况下,默认的目标文件名字和源文件名字是一样的。
gcc -c main.c -o a.o#如果希望自定义目标文件的名字,那么可以使用-o选项
1.1.3.2 链接(Link)
在gcc命令后面紧跟目标文件的名字,就可以将目标文件链接成为可执行文件,例如:
gcc main.o
就将 main.o 链接为 a.out。

在gcc命令后面紧跟源文件名字或者目标文件名字都是可以的,gcc命令能够自动识别到底是源文件还是目标文件:如果是源文件,那么要经过编译和链接两个步骤才能生成可执行文件;如果是目标文件,只需要链接就可以了。

使用-o选项仍然能够自定义可执行文件的名字,例如:
gcc main.o -o main.out
这样生成的可执行文件的名字就是 main.out。

http://www.lryc.cn/news/451058.html

相关文章:

  • 架构设计笔记-5-软件工程基础知识-2
  • [网络]抓包工具介绍 tcpdump
  • 基于STM32和FPGA的射频数据采集系统设计流程
  • 自动变速箱系统(A/T)详细解析
  • 【Kubernetes】常见面试题汇总(四十三)
  • OpenCL 学习(1)---- OpenCL 基本概念
  • 自定义注解加 AOP 实现服务接口鉴权以及内部认证
  • 《软件工程概论》作业一:新冠疫情下软件产品设计(小区电梯实体按钮的软件替代方案)
  • 基于Ernie-Bot打造语音对话功能
  • 动手学深度学习(李沐)PyTorch 第 3 章 线性神经网络
  • ROS理论与实践学习笔记——2 ROS通信机制之服务通信
  • 技术成神之路:设计模式(十八)适配器模式
  • 图神经网络:处理复杂关系结构与图分类任务的强大工具
  • LeetCode: 1971. 寻找图中是否存在路径
  • mysql 查询表所有数据,分页的语句
  • TI DSP TMS320F280025 Note13:CPUtimer定时器原理分析与使用
  • Australis 相機率定軟體說明
  • C++入门(有C语言基础)
  • 第四届高性能计算与通信工程国际学术会议(HPCCE 2024)
  • 负载均衡架构解说
  • 【异常数据检测】孤立森林算法异常数据检测算法(数据可视化 Matlab语言)
  • MKV转MP4丨FFmpeg的简单命令使用——视频格式转换
  • git使用“保姆级”教程4——版本回退及分支讲解
  • spring cache,Spring data redis
  • 10.数据结构与算法-线性表的应用(线性表与有序表的合并)
  • GAN|对抗| 生成器更新|判别器更新过程
  • day01——登录功能
  • Flutter中使用FFI的方式链接C/C++的so库(harmonyos)
  • 【C++】二义性
  • 高并发内存池(五):ThreadCache、CentralCache和PageCache的内存回收机制、阶段性代码展示和释放内存过程的调试