linux下执行in文件|如何用linux命令进入一个目录 并且执行该目录下的一个文件

linux下执行in文件|如何用linux命令进入一个目录 并且执行该目录下的一个文件的第1张示图

① 怎么在linux下执行一个文件

Linux下,如果文件是可执行文件,或者是脚本文件,只要有可执行权限就可以直接执行,操作命令如下:

./filename

以上filename,请使用需要执行的文件名进行替换。

② 分析linux下如何运行一个执行文件

虚拟机?我没有试过虚拟机下编译的.我以前学c和c++时就是在linux下编译专的,都可以运属行.你先确定编译是否成功.看看编译是的信息.linux下可执行文件,如果是在/bin或者/usr/bin里头,就直接敲文件名就可以运行.如果是在其他文件夹里,比如说运行/root里头的time文件你就cd/root再./time

③ Linux系统中,如何执行某一个文件

Test1/input.scs&Test2/input.scs&。。。 中间加一个&即可

④ linux下用什么命令来运行可执行文件

直接运行就是了。比如当前目录有个脚本文件,叫run.sh,只要这个文件有可执行权限,就可以在当前目录下运行./run.sh

⑤ linux文件权限命令

有三种不同类型的用户可对文件或目录进行访问:文件所有者,同组用户、其他用户。所有者一般是文件的创建者。所有者可以允许同组用户有权访问文件,还可以将文件的访问权限赋予系统中的其他用户。在这种情况下,系统中每一位用户都能访问该用户拥有的文件或目录。

每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。当用ls -l命令显示文件或目录的详细信息时,最左边的一列为文件的访问权限。例如:

$ ls-l sobsrc.tgz

-rw-r–r–1root root483997Ju1l517:3lsobsrc.tgz

横线代表空许可。r代表只读,w代表写,x代表可执行。注意这里共有10个位置。第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。例如:

– rw- r– r–

普通文件 文件主 组用户 其他用户

是文件sobsrc.tgz 的访问权限,表示sobsrc.tgz是一个普通文件;sobsrc.tgz的属主有读写权限;与sobsrc.tgz属主同组的用户只有读权限;其他用户也只有读权限。

确定了一个文件的访问权限后,用户可以利用Linux系统提供的chmod命令来重新设定不同的访问权限。也可以利用chown命令来更改某个文件或目录的所有者。利用chgrp命令来更改某个文件或目录的用户组。

下面分别对这些命令加以介绍。

chmod 命令

chmod命令是非常重要的,用于改变文件或目录的访问权限。用户用它控制文件或目录的访问权限。

以主文件夹下的一个名为“cc”的文件夹为例。下面一步一步介绍如何修改权限:

1.打开终端。输入”su”(没有引号)

2.接下来会要你输入密码,输入你的root密码。

3.假设我的文件夹在主目录里,地址为 /var/home/dengchao/cc 。假设我要修改文件权限为777,则在终端输入 chmod 777 /var/home/userid/cc 文件夹的权限就变为了777。

如果是修改文件夹及子文件夹权限可以用 chmod -R 777 /var/home/userid/cc

具体的权限(例如777的含意等)在下面解释下:

1.777有3位,最高位7是设置文件所有者访问权限,第二位是设置群组访问权限,最低位是设置其他人访问权限。

其中每一位的权限用数字来表示。具体有这些权限:

r(Read,读取,权限值为4):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目 录的权限。

w(Write,写入,权限值为2):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。

x(eXecute,执行,权限值为1):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。

2. 首先我们来看如何确定单独一位上的权限数值,例如最高位表示文件所有者权限数值,当数字为7时,7用“rwx”表示 –{4(r)+2(w)+1(x)=7}–又如果数值为6,则用“rw-”表示–{4(r)+2(w)+0(x)=6}–,”-”表示不具备权限,这里表 示不具备“执行”权限。

假如我们设定其他用户的访问权限为 “r–”,则数值为4+0+0=4

一开始许多初学者会被搞糊涂,其实很简单,我们将rwx看成二进制数,如果有则用1表示,没有则有0表示,那么rwx则可以表示成为:111

而二进制的111就是7。

3.我们再来看下怎么确定3个数位上的权限。假如我们要给一个文件设置权限,具体权限如下:

文件所有者有“读”、“写”、“执行”权限,群组用户有“读”权限,其他用户有“读”权限,则对应的字母表示为”rwx r– r–“,对应的数字为744

一般都是最高位表示文件所有者权限值,第二位表示群组用户权限,最低位表示其他用户权限。

下面来举些例子熟悉下。

权限 数值

rwx rw- r– 764

rw- r– r– 644

rw- rw- r– 664

该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。

1. 文字设定法

chmod [who] [+ | – | =] [mode] 文件名¼

命令中各选项的含义为:

操作对象who可是下述字母中的任一个或者它们的组合:

u 表示“用户(user)”,即文件或目录的所有者。

g 表示“同组(group)用户”,即与文件属主有相同组ID的所有用户。

o 表示“其他(others)用户”。

a 表示“所有(all)用户”。它是系统默认值。

操作符号可以是:

+ 添加某个权限。

– 取消某个权限。

= 赋予给定权限并取消其他所有权限(如果有的话)。

设置mode所表示的权限可用下述字母的任意组合:

r 可读。

w 可写。

x 可执行。

X 只有目标文件对某些用户是可执行的或该目标文件是目录时才追加x 属性。

s 在文件执行时把进程的属主或组ID置为该文件的文件属主。方式“u+s”设置文件的用户ID位,“g+s”设置组ID位。

t 保存程序的文本到交换设备上。

u 与文件属主拥有一样的权限。

g 与和文件属主同组的用户拥有一样的权限。

o 与其他用户拥有一样的权限。

-c:若该档案权限确实已经更改,才显示其更改动作

-f:若该档案权限无法被更改也不要显示错误讯息

-v:显示权限变更的详细资料

-R:对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)

–help:显示辅助说明

–version:显示版本

文件名:以空格分开的要改变权限的文件列表,支持通配符。在一个命令行中可给出多个权限方式,其间用逗号隔开。例如:chmod g+r,o+r example使同组和其他用户对文件example 有读权限。

例1:

$ chmod a+x sort

即设定文件sort的属性为:

文件属主(u) 增加执行权限

与文件属主同组用户(g) 增加执行权限

其他用户(o) 增加执行权限

例2:

$ chmod ug+w,o-x text

即设定文件text的属性为:

文件属主(u) 增加写权限

与文件属主同组用户(g) 增加写权限

其他用户(o) 删除执行权限

例3:

$ chmod u+s a.out

假设执行chmod后a.out的权限为(可以用ls – l a.out命令来看):

–rws–x–x1inin users7192Nov414:22a.out

并且这个执行文件要用到一个文本文件shiyan1.c,其文件存取权限为“–rw——-”,即该文件只有其属主具有读写权限。

当其他用户执行a.out这个程序时,他的身份因这个程序暂时变成inin(由于chmod命令中使用了s选项),所以他就能够读取shiyan1.c这个文件(虽然这个文件被设定为其他人不具备任何权限),这就是s的功能。

因此,在整个系统中特别是root本身,最好不要过多的设置这种类型的文件(除非必要)这样可以保障系统的安全,避免因为某些程序的bug而使系统遭到入侵。

例4:

$ chmod a–x mm.txt

$ chmod–x mm.txt

$ chmod ugo–x mm.txt

以上这三个命令都是将文件mm.txt的执行权限删除,它设定的对象为所有使用者。

2. 数字设定法

我们必须首先了解用数字表示的属性的含义:0表示没有权限,1表示可执行权限,2表示可写权限,4表示可读权限,然后将其相加。所以数字属性的格式应为3个从0到7的八进制数,其顺序是(u)(g)(o)。

例如,如果想让某个文件的属主有“读/写”二种权限,需要把4(可读)+2(可写)=6(读/写)。

数字设定法的一般形式为:chmod [mode] 文件名¼

例1:

$ chmod644mm.txt

$ ls–l

即设定文件mm.txt的属性为:

-rw-r–r–1inin users1155Nov511:22mm.txt

文件属主(u)inin 拥有读、写权限

与文件属主同组人用户(g) 拥有读权限

其他人(o) 拥有读权限

例2:

$ chmod750wch.txt

$ ls–l

-rwxr-x—1inin users44137Nov129:22wchtxt

即设定wchtxt这个文件的属性为:

文件主本人(u)inin 可读/可写/可执行权

与文件主同组人(g) 可读/可执行权

其他人(o) 没有任何权限

chgrp命令

功能:改变文件或目录所属的组。

语法:chgrp[选项] group filename¼

参数:

-c或–changes 效果类似”-v”参数,但仅回报更改的部分。

-f或–quiet或–silent 不显示错误信息。

-h或–no-dereference 只对符号连接的文件作修改,而不更动其他任何相关文件。

-R或–recursive 递归处理,将指定目录下的所有文件及子目录一并处理。

-v或–verbose 显示指令执行过程。

–help 在线帮助。

–reference=<参考文件或目录> 把指定文件或目录的所属群组全部设成和参考文件或目录的所属群组相同。

–version 显示版本信息。

该命令改变指定指定文件所属的用户组。其中group可以是用户组ID,也可以是/etc/group文件中用户组的组名。文件名是以空格分开的要改变属组的文件列表,支持通配符。如果用户不是该文件的属主或超级用户,则不能改变该文件的组。

该命令的各选项含义为:

– R 递归式地改变指定目录及其下的所有子目录和文件的属组。

例1:

$chgrp-R book/opt/local/book

改变/opt/local /book/及其子目录下的所有文件的属组为book。

chown命令

功能:更改某个文件或目录的属主和属组。这个命令也很常用。例如root用户把自己的一个文件拷贝给用户yusi,为了让用户yusi能够存取这个文件,root用户应该把这个文件的属主设为yusi,否则,用户yusi无法存取这个文件。

语法:chown[选项] 用户或组 文件

说明:chown将指定文件的拥有者改为指定的用户或组。用户可以是用户名或用户ID。组可以是组名或组ID。文件是以空格分开的要改变权限的文件列表,支持通配符。

参数说明:

user : 新的档案拥有者的使用者 ID

group : 新的档案拥有者的使用者群体(group)

-c : 若该档案拥有者确实已经更改,才显示其更改动作

-f : 若该档案拥有者无法被更改也不要显示错误讯息

-h : 只对于连结(link)进行变更,而非该 link 真正指向的档案

-v : 显示拥有者变更的详细资料

-R : 对目前目录下的所有档案与子目录进行相同的拥有者变更(即以递回的方式逐个变更)

–help : 显示辅助说明

–version : 显示版本

例1:把文件yusi123.com的所有者改为yusi。

$chownyusi yusi123.com

例2:把目录/demo及其下的所有文件和子目录的属主改成yusi,属组改成users。

$ chown-R yusi.users/demo

例如:chown qq /home/qq (把home目录下的qq目录的拥有者改为qq用户)

例如:chown -R qq /home/qq (把home目录下的qq目录下的所有子文件的拥有者改为qq用户)

⑥ linux in-s命令怎么用

linux in-s命令用于创建软链接,步骤如下:

1、首先,连接相应linux主机,进入到linux命令行状态下,等待输入shell指令。

⑦ linux可执行文件的运行命令

LS的,你的说法是不正确的,你对运行命令的认识不清楚。。。比如说你想专用ls命令查看当前目录,你属当然可以直接使用ls,这是因为你的PATH的设置。抛开PATH,你可以使用/bin/ls,你可以试试,但肯定不会是“./bin/ls”的。至于你说的"./路径/文件名",适用于要执行的文件相对于当前目录的某个位置。因为“.”的意思是当前目录所以正确的说法是"/路径/文件名",也就是可执行文件的绝对路径,你说的情况算是这里面的一种。。。当然出现PATH之后,会出现执行命令的便捷方法,诸如以上说的ls就是这类情况。在使用者看来,用法不同,但实质是一样的。。

⑧ Linux源代码中有makefile.in文件,如何生成Makefile

网上搜索,一般是新建空的makefile项目,然后用文件系统导入功能导入代码实际上:回eclipse3.7提供了这答一功能:file–>new–>makefileprojectwithexistingcode导入后发现报错:[plain]viewplain****buildofconfigurationdefaultforprojectptam****makeallmake:***没有规则可以创建目标“all”。停止。

⑨ noi linux下怎么运行一个文件

noi linux 安装与使用昨天兴致勃勃的装上了NOI linux (用的WINDOWS 下安装) …… 我去,明明就是Ubuntu么…… noi的影子都见不到。后来使用的时候发现?!!! 编译出来的程序居然没法运行?准确的说是这样子的,g++ 编出来的程序是没有后缀限制的,你想要他是什么就是什么。在LINUX下运行程序不是像WINDOWS一样,默认可执行文件后缀为.exe 在linux下,什么后缀的文件都能运行(.txt也行哦),那么linux用什么来确定那些文件应该像程序一样运行,那些该用记事本之类的软件打开呢?就是用权限,你可以右键你编的程序文件,点权限属性页,你会看到一个选项框:"以程序执行此文件",按理来说打上勾就可以双击运行了。正常情况下,打上勾后,双击运行,会弹出一个窗口,询问你是要运行它还是用其他软件打开它。当然,为文件添加运行权限还可以用终端(就是命令行一类的东西啦~)命令: chmod a+x xqy.exe xqy.exe是你的程序文件(当然,不一定是.exe后缀,g++默认是是.out) a是all 全体用户的意思 x是可执行的意思, +是添加的意思但是,但是,你知道吧,我打上勾了以后,下一秒,那个勾居然自动取消了,自动取消了你知道吧!居然无法修改权限?!!!!郁闷啊………… 查了半天资料,一句话把我给点醒了…… “windows的分区没有x这个权限位”……就是说,怎么回事呢,前面不是提到我是从windows下安装的么,那时候不是要求你选择要安装的硬盘么?安装程序仅仅是把你所选择的硬盘格式化成了linux支持的ext4格式。但是,其他的盘还只是fat格式,而我们知道文件的权限是记录在文件系统中的,实际上就是一组二进制位标记,而windows支持的fat ntfs 都是没有 x 也就是“以程序执行此文件”这个位标记的,就是说,用fat ntfs 的格式的盘从理论上来讲就是不可能运行linux的程序的!!!坑爹坑爹坑爹!!!去你的,果断格式化掉所有的硬盘,直接格成ext4 话说果然能用了啊……但是,但是,重启之后,重启之后,电脑永久滴停留在了启动界面的黑屏状态…………(引导扇区被破坏……)话说咱们不是从windows下安装的linux么,所以此时的linux就是被阉割过的,不是完整的linux,他仅仅是写入了windows C盘下的boot文件,并没有真正的为磁盘写入引导,用的还是windows的引导,所以,在安装的时候你应该竟发现,是不允许安装在C盘的…… 然而,我们之前不是把所有的盘都格式化了么,于是启动引导也就木有了……同志们,如果你已经跟我一样了的话…… 还是刻盘来得快啊……如果不带刻盘的话,你就必须:会dos命令 会GNU Grub ,进行手动引导硬盘上的iso镜像文件进行完整安装……(如果电脑上没有GNU Grub的话…… 貌似可以用U盘引导(更麻烦了,还是刻盘吧))可惜本文不是装门介绍手动引导的…… 反正我是坎坎坷坷手动引导成了……还有刻盘的时候一定要直接刻iso文件,不能解压以后再直接刻文件啊,那样可出来的也是木有引导扇区的!……终于安装好完整的了,进去以后忽然发现,欢迎画面变成了NOI的徽标…… 原来NOI那帮家伙只是改了完整版的系统,留了个“windwos下安装”来坑你爹……话说NOI LINUX还是可以的,已经帮你卸载掉了没必要的各种文字、媒体处理软件,自动安装了各种编译器。话说Ubuntu的文本编辑器(Gedit)很给力啊,带自动着色,自动换行,话说c++有了这个和终端(就是命令行)连IDE都不用了呢!总之,千万不要在windows下安装啊,那就是个浪费你时间,损你硬盘的坑爹货!=========================== 现在开始扯淡 ========================================忽然发现好多人在看我的帖子啊…… 那我就再多说几句吧~首先呢 虽然我在上面把 “运行权限” 这个问题弄得太复杂了 但是呢,好消息是 你比赛的时候根本不需要考虑权限 ==! 因为编译器(至少是G++)会自动给你设置权限!(当然 前提是你的硬盘支持这个权限==!)还有呢 noi linux 下的编辑器真的很好用啊 只要改变一下颜色 实在想不出为什么还要用IDE (那边一怎么办呢? 嗯 我一直以来都是自己写脚本,用命令行调试的),至少比DEV-C++ 好用多了多了多了多了……话说我建议大家还是用命令行编程 因为这样就可以很好地与 GDB 结合在一起,而且相当简洁 快速。但是如果打命令行太麻烦了该怎么办呢? 写个脚本就可以了在WINDOWS 下 我们可以写这样一个BAT文件:echo offcolor 1fset g++="D:\Program Files\DEV-CPP\Bin\g++.exe"set test=F:\xqy\C++\OI\TESTset gdb="D:\Program Files\DEV-CPP\Bin\gdb.exe"set oi=F:\xqy\C++\OI:loopset /p now=please set now adress : cd %now%set g=%g++% "%now%\main.cpp" -g -o "%now%\main.g.exe"set db=%gdb% "%now%\main.g.exe"set r="%now%\main.g.exe"cmdgoto loop很简单吧~ 更简单的是什么呢? 以后你切题的时候就把这个脚本打开,然后 输入你的当前工作目录(你在这个目录下的程序文件名必须是: main.cpp) 之后呢,你要编译的时候就只需要输入: %g% 调试的时候: �% 运行: %r% 相当简洁了吧!!!!!linux 下的版本呢? 额 我这忘了 一直在用 windows (现在也是)改天去linux上再看吧…… :啊 我想起来了 可是文件内容太长了 就又开了个帖子:【NOI linux】 shell 相关是时候写个笔记记录一下关于 noi linux shell 的内容了我编程一般是习惯使用 命令行(脚本) 的,但是每次都输入 g++ main.cpp -g -o main.g 岂不是太累了?于是便使用一个脚本来简化它吧~echo XDBecho —- all right reserves xqy —–echoexport g="g++ main.cpp -g -o main.g"export db="gdb main.g"export r=./main.ggnome-terminalecho 命令么 就不说了(在屏幕上输出)export 相当与 DOS 里的 SET , 设置变量(宏)gnome-terminal 是运行终端的意思cd 更改当前工作目录dir 查看当前工作目录下的文件把这个东西保存为 ***.sh 然后在属性里面赋予它 执行权限(右键->属性->权限->允许以程序执行文件)以后你写代码的时候就可以统一把文件命名为main.cpp 比如说我写了一个文件在 /xqy/main.cpp之后运行脚本,使用 cd dir 命令移动到 xqy 下面 输入: $g 我就可以编译了输入 $db 就可以调试了输入 $r 就直接运行了简单了横多吧!!!还有几条好用的shell命令:clear 清屏 (linux的屏幕不像dos一样是自动清屏的 用到一定时候就必须手动清屏 否则对内存的消耗会很大的!)echo xxx > in.in 向 in.in 文件中写入 xxx 内容cat in.in 读取全部的 in.in文件中的内容 并输出chmod 设置文件权限

⑩ 如何用linux命令进入一个目录 并且执行该目录下的一个文件

用linux命令进入一个目录 并且执行该目录下的一个文件方法如下:

1、打开文件vi(如内/etc里面有一容个文件hosts,要打开这个文件执行vi hosts);

2、进入编辑模式i,a(打开hosts后不能进行编辑,输入i之后出现—insert就进入编辑模式可以进行编辑了);

3、退出编辑模式,按下Esc;

4、进入命令模式,按下;

5、退出但不保存q;

6、退出保存wq或x;

7、保存w。

未经允许不得转载:山九号 » linux下执行in文件|如何用linux命令进入一个目录 并且执行该目录下的一个文件

赞 (0)