Linux Shell操作 执行C代码显示当前路径
在unix系统下一切皆文件,文件夹是文件的一种。设备也会对应到相应的文件类型。
基础知识:
. 代表当前路径
..代表上级目录(父目录)
/ 在路径的最前边的时候代表树根。在路径中间的时候只不过是路径分隔符
~代表当前用户的工作主目录,操作系统可以同时多用户登陆的
绝对路径 从树根一步一步找/Users/anhuikehong/Desktop/Swift
相对路径
- ls系列
pwd:显示当前路径
ls:显示当前文件夹下的文件
ls -l:长格式显示当前路径下的文件。也就是将文件的属性显示出来。
image.png
d 代表是文件夹类型的文件
- 代表的是普通的文件类型
ls -a:显示所有文件包括隐藏文件
- cd系列
切换路径
cd xx:xxx是文件名 进入xxx文件
cd /:切换当前路径到树根
cd ..:切换路径到上一级目录
cd ~切换路径到当前用户的工作主目录
cd -撤销上一次cd 命令的操作 - 查看当前用户
echo $USER
image.png - 创建文件/文件夹
mkdir xxx创建xxx文件夹
rmdir xxx删除xxx文件夹
touch xxx创建xxx文件 未指定文件类型:touch wpp指定文件类型touch wpp.c
rm xxx删除文件名
rm -r xxx删除文件夹
cat wpp.c查看文件内容
image.png - man ls 查看ls命令的帮助文档
- vi
vi wpp.c可以打开wpp.c文件或者创建wpp.c文件并打开
按ESC键 跳到命令模式
:w保存文件但不退出vi
:wq保存文件并退出vi
Shift+Z Z 退出
i插入
#include<stdio.h>
int main()
{
printf("hello");
return 0;
}
- 运行C语言
直接运行
gcc wpp.c生成a.out文件
./a.out运行
image.png详细运行
image.png
image.png

gcc 是编译器
-S 调用编译器的功能,将C语句翻译成汇编语句
-c 调用编译器功能将C语句、汇编语句翻译成机器语言
-o 文件 指定文件名字,在对程序处理以后,需要将处理后的内容输出到一个文件中,这个文件就是输出文件。
gcc -S wpp.c -o wpp.s
将C语言翻译成汇编语言
gcc -c wpp.s -o wpp.o
或者
gcc -c wpp.c -o wpp.o
以.o结尾称为目标文件
gcc wpp.o -o wppExe
或者 gcc wpp.c -o wpp
将目标文件和运行库文件进行绑定,形成可执行的文件。该过程称为链接
./wppExe
执行文件
- 清屏clear
Linux Shell操作 执行C代码显示当前路径的更多相关文章
- Linux shell 操作 postgresql,并设置crontab任务
Linux shell 操作 postgresql:删除间隔日期的数据-删除指定日期的数据-vacuumdb 清理数据库 -清理日志 -定期执行脚本 *修改pg_hba.conf 设置本地连接无密码, ...
- java代码运行linux shell操作
1.Java调用shell Java语言以其跨平台性和简易性而著称,在Java里面的lang包里(java.lang.Runtime)提供了一个允许Java程序与该程序所运行的环境交互的接口,这就是 ...
- Linux shell批量执行scp脚本工具
转载: linux shell + expect:批量scp脚本工具 2011-09-13 15:51:06 分类: Python/Ruby 最近在准备一个部署的任务,其中有一 ...
- linux shell的执行方式
./ ping.sh 这个意思 ,'./'的意思是在当前目录执行, ping.sh----------------------------------------------------------- ...
- linux shell 操作 mysql命令(不进入mysql操作界面)
由于需要,需要将一系列mysql的操作制作成.sh文件,只需要shell操作bash命令就可以傻瓜式的完成黑盒任务. #!/bin/bash mysql -uroot -p??? -e "c ...
- history 查看历史操作记录在shell脚本执行中无法显示问题
今天使用shell脚本想查看历史操作命令的记录于是写了一个再简单不过的脚本,可是以chmod +x 权限执行./test.sh发现执行后没有任何反应.于是查找原因:将脚本文件中的#!/bin/bash ...
- Linux Shell远程执行命令
1.问题描述 经常需要远程到其他节点上执行一些shell命令,如果分别ssh到每台主机上再去执行很麻烦,下边介绍shell命令远程执行的方法. 前提: 远程电脑之间已经配置ssh免密码登陆 2.脚本方 ...
- linux shell并发执行命令
一般我们在linux上十一shell命令的批量执行操作,一般使用for或者while 循环进行操作,但是这样有一个问题,for或者while本质上是串行的,并不能,如果某一个命令执行耗费的时间比较长, ...
- Linux Shell下执行sqlplus
转载自: http://www.cnblogs.com/include/archive/2011/12/30/2307889.html 以下方法解决了在linux下自动的删除创建用户 sqlplus ...
随机推荐
- linux(centos8): 临时关闭/永久关闭交换分区swap?
一,为什么要关闭swap? 1,swap的用途? swap 分区就是交换分区,(windows平台叫虚拟内存) 在物理内存不够用时, 操作系统会从物理内存中把部分暂时不被使用的数据转移到交换分区, 从 ...
- centos8平台nginx服务配置打开文件限制max open files limits
一,nginx启动时提示打开文件数,ulimit的配置不起作用: 1, 2020/04/26 14:27:46 [notice] 1553#1553: getrlimit(RLIMIT_NOFILE) ...
- 虚拟环境与local_settings
虚拟环境(virtualenv) 对于同时管理多个不同的项目时,使用虚拟环境是必须的. 虚拟环境就是用来为一个项目新建一个全新的纯净的python运行环境,该环境与系统的python环境相互隔离,且虚 ...
- linux上安装mitmproxy
一.去git上下载安装包 下载mitmproxy二进制安装包:https://github.com/mitmproxy/mitmproxy/releases/ 二.安装 #上传 rz 安装包的本地路径 ...
- maven 是什么
- 用 Span 对 C# 进程中三大内存区域进行统一访问 ,太厉害了!
一:背景 1. 讲故事 前段时间写了几篇 C# 漫文,评论留言中有很多朋友多次提到 Span,周末抽空看了下,确实是一个非常
- vue table切换 (不使用路由功能)
背景: 一个小场景,感觉使用路由功能太浪费了,考虑用一个简单的类控制 实例代码 //v-for 实现循环<ul class="nav-bar"> <li v-fo ...
- Promise 配合 axios 使用
Promise是一个构造函数,自己身上有all.reject.resolve这几个眼熟的方法,原型上有then.catch等同样很眼熟的方法 很细致的Promise使用详解 自己脑补 vue 工程化的 ...
- js 小数点失精度
解决方法思路:将小数化成整数后再作运算.具体代码如下: /*** 加法运算,避免数据相加小数点后产生多位数和计算精度损失.** @param num1加数1 | num2加数2*/function ...
- Mybatis---05Mybatis配置文件浅析(三)
1.objectFactory:(对象工厂)MyBatis 每次创建结果对象的新实例时,它都会使用一个对象工厂(ObjectFactory)实例来完成. 默认的对象工厂需要做的仅仅是实例化目标类,要么 ...





