Ⅰ linux下如何运行可执行文件
以ubuntu系统为例:
1,首先去运行perl-v命令查看您的linux系统上面是否安装了perl工具,如果已安装的话,会输出版本号,如果没有安装,则安装perl。sudo apt-get install perl
Perl,一种功能丰富的计算机程序语言,运行在超过100种计算机平台上,适用广泛,从大型机到便携设备,从快速原型创建到大规模可扩展开发。
Perl借取了C、sed、awk、shell脚本语言以及很多其他程序语言的特性,其中最重要的特性是它内部集成了正则表达式的功能,以及巨大的第三方代码库CPAN。
简而言之,Perl像C一样强大,像awk、sed等脚本描述语言一样方便,被Perl语言爱好者称之为“一种拥有各种语言功能的梦幻脚本语言”、“Unix中的王牌工具”。
Ⅱ linux下用什么命令来运行可执行文件
不需要什么命令,在Linux上面只要是有可执行权限的文件都可以运行(当然前提是这个文件有代码逻辑,能运行的起来)。给一个文件添加可执行权限的命令是这样执行的:chmod a+x 文件名。当给文件赋予了可执行权限后,可以这样运行它:在终端中先用cd命令切换到这个文件所在的目录,再用./文件名的方式运行它(在文件前面加的是一个英文点号和一个英文斜杠),表示在当前目录下运行文件,一定加上这个./。这样文件就运行起来了,不管它是二进制文件,还是.pl、.py、.sh等脚本文件,运行它们都是这样操作的。
Ⅲ linux 命令行如何运行程序
把程序的绝对路径或者相对路径写出来,软件就会执行。
还可以设置环境变量。
如果是文件,可以设置执行权限,然后./文件名来执行。
Ⅳ 如何用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必须学会的60个命令:文件处理1
Linux系统信息存放在文件里,文件与普通的公务文件类似。每个文件都有自己的裤悔名字、内容、存放地址及其它一些管理信息,如文件的用户、文戚纯姿件的大小等。文件可以是一封信、一个通讯录,或者是程序的源语句、程序的数据,甚至可以包括可执行的程序和其它非正文内容。Linux文件系统具有良好的结构,系统提供了很多文件处理程序。这里主要介绍常用的文件处理命令。
file 1.作用file通过探测文件内容判断文件类型,使用权限是所有用户。
2.格式file [options]文件名3.[options]主要参数-v:在标准输出后显示版本信息,并且退出。
-z:探测压缩过的文件类型。
-L:允许符合连接。
-f name:从文件namefile中读取要分析的文件名列表。
4.简单说明使用file命令可以知道某个文件究竟是二进制(ELF格式)的可执行文件,还是Shell Script文件,或者是其它的什么格式。file能识别的文件类型有目录、Shell脚本、英文文本、二进制可执行文件、C语言源文件、文本文件、DOS的可执行文件。
5.应用实例如果我们看到一个没有后缀的文件grap,可以使用下面命令:
$ file grap grap:English text 此时系统显示这是一个英文文本文件。需要说明的是,file命令不能探测包括图形、音频、视频等多媒体文件类型。
mkdir 1.作用mkdir命令的作用是建立名称为dirname的子目录,与MS DOS下的md命令类似,它的使用权限是所有用户。
2.格式mkdir [options]目录名3.[options]主要参数-m,--mode=模式:设定权限<模式>,与chmod类似。
-p,--parents:需要时创建上层目录;如果目录早已存在,则不当作错误。
-v,--verbose:每次创建新目录都显示信息。
--version:显示版本信息后离开。
4.应用实例在进行目录创建时可以设置目录的权限,此时使用的参数是“-m”。假设要创建的目录名是“tsk”,让所有用户都有rwx(即读、写、执行的权限),那么可以使用以下命令:
$ mkdir-m 777 tsk grep 1.作用grep命令可以指定文件中搜索特定的内容,并将含有这些内容的行标准输出。grep全称是Global Regular Expression Print,表示全局正则表达式版本,它的使用权限是所有用户。
2.格式grep [options] 3.主要参数[options]主要参数:
-c:只输出匹配行的计数。
-I:不区分大小写(只适用于单字符)。
-h:查询多文件时不显示文件名。
-l:查询多文件时只输出包含匹配字符的文件名。
-n:显示匹配行及行号。
-s:不显示不存在或无高绝匹配文本的错误信息。
-v:显示不包含匹配文本的所有行。
pattern正则表达式主要参数:
:忽略正则表达式中特殊字符的原有含义。
^:匹配正则表达式的开始行。
$:匹配正则表达式的结束行。
<:从匹配正则表达式的行开始。
>:到匹配正则表达式的行结束。
[ ]:单个字符,如[A]即A符合要求。
[ - ]:范围,如[A-Z],即A、B、C一直到Z都符合要求。
。:所有的单个字符。
*:有字符,长度可以为0。
正则表达式是Linux/Unix系统中非常重要的概念。正则表达式(也称为“regex”或“regexp”)是一个可以描述一类字符串的模式(Pattern)。如果一个字符串可以用某个正则表达式来描述,我们就说这个字符和该正则表达式匹配(Match)。这和DOS中用户可以使用通配符“*”代表任意字符类似。在Linux系统上,正则表达式通常被用来查找文本的模式,以及对文本执行“搜索-替换”操作和其它功能。4.应用实例查询DNS服务是日常工作之一,这意味着要维护覆盖不同网络的大量IP地址。有时IP地址会超过2000个。如果要查看nnn.nnn网络地址,但是却忘了第二部分中的其余部分,只知到有两个句点,例如nnn nn..。要抽取其中所有nnn.nnn IP地址,使用[0-9 ]{3 }.[0-0{3}。含义是任意数字出现3次,后跟句点,接着是任意数字出现3次,后跟句点。
$grep '[0-9 ]{3 }.[0-0{3}' ipfile 补充说明,grep家族还包括fgrep和egrep。fgrep是fix grep,允许查找字符串而不是一个模式;egrep是扩展grep,支持基本及扩展的正则表达式,但不支持q模式范围的应用及与之相对应的一些更加规范的模式。
dd 1.作用dd命令用来复制文件,并根据参数将数据转换和格式化。
2.格式dd [options] 3.[opitions]主要参数bs=字节:强迫ibs=<字节>及obs=<字节>。
cbs=字节:每次转换指定的<字节>。
conv=关键字:根据以逗号分隔的关键字表示的方式来转换文件。
count=块数目:只复制指定<块数目>的输入数据。
ibs=字节:每次读取指定的<字节>。
if=文件:读取<文件>内容,而非标准输入的数据。
obs=字节:每次写入指定的<字节>。
of=文件:将数据写入<文件>,而不在标准输出显示。
seek=块数目:先略过以obs为单位的指定<块数目>的输出数据。
skip=块数目:先略过以ibs为单位的指定<块数目>的输入数据。
4.应用实例
dd命令常常用来制作Linux启动盘。先找一个可引导内核,令它的根设备指向正确的根分区,然后使用dd命令将其写入软盘:
$ rdev vmlinuz /dev/hda $dd if=vmlinuz of=/dev/fd0
上面代码说明,使用rdev命令将可引导内核vmlinuz中的根设备指向/dev/hda,请把“hda”换成自己的根分区,接下来用dd命令将该内核写入软盘。
find 1.作用find命令的作用是在目录中搜索文件,它的使用权限是所有用户。
2.格式find [path][options][expression] path指定目录路径,系统从这里开始沿着目录树向下查找文件。它是一个路径列表,相互用空格分离,如果不写path,那么默认为当前目录。
3.主要参数[options]参数:
-depth:使用深度级别的查找过程方式,在某层指定目录中优先查找文件内容。
-maxdepth levels:表示至多查找到开始目录的第level层子目录。level是一个非负数,如果level是0的话表示仅在当前目录中查找。
-mindepth levels:表示至少查找到开始目录的第level层子目录。
-mount:不在其它文件系统(如Msdos、Vfat等)的目录和文件中查找。
-version:打印版本。
[expression]是匹配表达式,是find命令接受的表达式,find命令的所有操作都是针对表达式的。它的参数非常多,这里只介绍一些常用的参数。
—name:支持统配符*和?。
-atime n:搜索在过去n天读取过的文件。
-ctime n:搜索在过去n天修改过的文件。
-group grpoupname:搜索所有组为grpoupname的文件。
-user用户名:搜索所有文件属主为用户名(ID或名称)的文件。
-size n:搜索文件大小是n个block的文件。
-print:输出搜索结果,并且打印。
4.应用技巧find命令查找文件的几种方法:
(1)根据文件名查找例如,我们想要查找一个文件名是lilo.conf的文件,可以使用如下命令:
find /-name lilo.conf find命令后的“/”表示搜索整个硬盘。
(2)快速查找文件根据文件名查找文件会遇到一个实际问题,就是要花费相当长的一段时间,特别是大型Linux文件系统和大容量硬盘文件放在很深的子目录中时。如果我们知道了这个文件存放在某个目录中,那么只要在这个目录中往下寻找就能节省很多时间。比如smb.conf文件,从它的文件后缀“.conf”可以判断这是一个配置文件,那么它应该在/etc目录内,此时可以使用下面命令:
find /etc-name smb.conf 这样,使用“快速查找文件”方式可以缩短时间。
(3)根据部分文件名查找方法有时我们知道只某个文件包含有abvd这4个字,那么要查找系统中所有包含有这4个字符的文件可以输入下面命令:
find /-name '*abvd*'
输入这个命令以后,Linux系统会将在/目录中查找所有的包含有abvd这4个字符的文件(其中*是通配符),比如abvdrmyz等符合条件的文件都能显示出来。
(4)使用混合查找方式查找文件
find命令可以使用混合查找的方法,例如,我们想在/etc目录中查找大于500000字节,并且在24小时内修改的某个文件,则可以使用-and (与)把两个查找参数链接起来组合成一个混合的查找方式。
find /etc -size +500000c -and -mtime +1
mv 1.作用mv命令用来为文件或目录改名,或者将文件由一个目录移入另一个目录中,它的使用权限是所有用户。该命令如同DOS命令中的ren和move的组合。
2.格式mv[options]源文件或目录目标文件或目录3.[options]主要参数-i:交互方式操作。如果mv操作将导致对已存在的目标文件的覆盖,此时系统询问是否重写,要求用户回答“y”或“n”,这样可以避免误覆盖文件。
-f:禁止交互操作。mv操作要覆盖某个已有的目标文件时不给任何指示,指定此参数后i参数将不再起作用。
4.应用实例(1)将/usr/cbu中的所有文件移到当前目录(用“.”表示)中:
$ mv /usr/cbu/ * . (2)将文件cjh.txt重命名为wjz.txt:
$ mv cjh.txt wjz.txtls 1.作用ls命令用于显示目录内容,类似DOS下的dir命令,它的使用权限是所有用户。
2.格式ls [options][filename] 3.options主要参数-a,--all:不隐藏任何以“.”字符开始的项目。
-A,--almost-all:列出除了“.”及“..”以外的任何项目。
-b,--escape:以八进制溢出序列表示不可打印的字符。
--block-size=大小:块以指定<大小>的字节为单位。-B,--ignore-backups:不列出任何以~字符结束的项目。
-f:不进行排序,-aU参数生效,-lst参数失效。
-F,--classify:加上文件类型的指示符号(*/=@|其中一个)。
-g:like-l, but do not list owner。
-G,--no-group:inhibit display of group information。
-i,--inode:列出每个文件的inode号。
-I,--ignore=样式:不印出任何符合Shell万用字符<样式>的项目。
-k:即--block-size=1K。
-l:使用较长格式列出信息。
-L,--dereference:当显示符号链接的文件信息时,显示符号链接所指示的对象,而并非符号链接本身的信息。
-m:所有项目以逗号分隔,并填满整行行宽。
-n,--numeric-uid-gid:类似-l,但列出UID及GID号。
-N,--literal:列出未经处理的项目名称,例如不特别处理控制字符。
-p,--file-type:加上文件类型的指示符号(/=@|其中一个)。
-Q,--quote-name:将项目名称括上双引号。
-r,--reverse:依相反次序排列。
-R,--recursive:同时列出所有子目录层。
-s,--size:以块大小为序。
diff 1.作用diff命令用于两个文件之间的比较,并指出两者的不同,它的使用权限是所有用户。
Ⅵ linux下用什么命令来运行可执行文件
你好,
参考 /etc/init.d/ 下面的脚本
举个例子 (sshd的简化版本)
#!/bin/sh
## start and stop the OpenBSD secure shell daemon
set -e
export PATH="${PATH:+$PATH:}/usr/sbin:/sbin"
case "$1" in
start)
echo -n "Starting sshd"
start-stop-daemon --start --quiet --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd --$SSHD_OPTS
echo -n "done."
;;
stop)
echo -n "Stopping sshd"
start-stop-daemon --stop --quiet --pidfile /var/run/sshd.pid
echo -n "done."
;;
restart)
echo -n "Restarting sshd"
start-stop-daemon --stop --signal 1 --quiet --pidfile /var/run/sshd.pid --exec /usr/sbin/sshd
echo -n "done."
;;
esac
exit 0
将以上保存为文件 加上运行权限 就可以友好大用
script start|stop|restart 控制 启动 停止 重启动了
其他的可执行文件替换掉里面的sshd和路径即可
更详细的脚本 还是分析下 /好竖etc/init.d/ 下袜培面的脚本 会学到很多的
Ⅶ linux命令行如何运行程序
要充分理解本文,必须具备Windows 环境下桌面应用程序的工作经验,我认为读者对如何使用 Linux 桌面有一个基本的了解。使用一个运行的 Linux 计算来机探讨本文的概念和示例是很有帮助的。
有时候第一次在 Linux 上运行一个应用程序需要一点额外工作。有些应用程序,比如服务器服务,可能无法安装为服务,因此您需要从命令行启动这些应用程序。对于启动这些应用程序的用户帐户而言,需要在应用程序文件中设置执行许可标志 (x)。
Linux 在内核空间或用户空间运行进程。用户空间 是操作系统的区域,应用程序通常在此运行。简单地说,每个用户帐户有其自己的用户空间,应用程序在这个领域内运行。
默认情况下,只有 root 用户有权访问内核空间。root 用户 是 Linux 中的超级用户,相当于 Windows 中的管理员帐户。在 root 用户帐户下运行应用程序可能会引起安全风险,是不可取的。
很多服务器服务需要 root 权限启动服务。然而,服务启动后,root 帐户通常会将其移至服务帐户。严格地说,Linux 中的服务帐户 才是标准的用户帐户。主要区别是服务帐户仅用于运行一个服务,而不是为任何实际登录的用户准备的。
您可以使用 chmod 命令在一个文件中设置执行权限。在 Linux 中,umask 设置通常用来防止下载的文件被执行,也有充分的理由相信,因为它有助于维护 Linux 计算机的安全性。
大多数 Linux 发行版具有一个值为 022 的 umask 设置,这意味着,默认情况下一个新文件权限设置为 644。权限的数字表示形式采用读 (4)、写 (2)、执行 (1) 的格式。因此,默认权限为 644 的应用程序下载意味着文件所有者有读写权限,而组用户和其他用户只有读权限。
例如,为每个人赋予一个文件的执行权限,使用 chmod a+x 命令。a 表示所有人,加号 (+) 表示添加,而 x 表示执行。同样地,如果应用程序是一个服务器服务,您应该确保只有授权帐户才有权执行此服务。
如果一个应用程序能够在标准用户帐户权限下运行,但只有特定组中的用户才需要使用它,您可以将该组所有者权限设置为可执行,然后将这些用户添加到该组中。
更具体地说,您可以在一个可执行文件中设置访问控制列表 (ACL) 权限,赋予特定用户或组权限来运行该应用程序。使用 setfacl 实用工具设置 ACL 权限。
对于这些需要以 root 用户启动进程的应用程序,比如服务器服务,您有几个选择。总结了允许用户执行需要 root 权限的服务器服务的各种选项。
作为 root 用户 不推荐用于服务器服务。当用户已经知道 root 密码而且应用程序泄露不是首要关注问题时,可用于应用程序。
SetUID 由于安全问题,不推荐使用。SetUID 允许标准用户以另一个用户方式,比如 root 用户,执行一个文件。
sudo 很常用,并且被认为是一个很好的实践。sudo 授予一个用户或组成员权限以执行可能额外需要 root 权限的文件。该用户不需要知道 root 密码。
带有文件权限的标准用户帐户 在一个文件上为用户所有者、组所有者或其他人(所有人)设置执行权限。这是授予那些不需要 root 权限来执行应用程序的用户的常用方法。
带有 ACL 权限的标准用户帐户 使用较少,但是如果您不想授予一个用户 sudo 访问或者更改文件的权限,这也是一个可行的解决方案。在一个文件上使用 setfacl 命令,您可以授予一个特定用户或用户组执行该文件的权力。
在管理 Linux 服务器时,从命令行运行应用程序是一项基本的任务。很多应用程序使用 shell 脚本(类似于 Windows 批处理文件 .bat)来启动应用程序并执行其他任务,比如设置变量以及为其他用户分配进程。例如,应用程序可能需要一个 java™ Virtual Machine (JVM) 来执行。那样的话,shell 脚本可以设置适当的环境变量,然后执行 Java 命令来运行 Java Archive (JAR) 或类文件。这同样适用于使用 Perl、python、甚至 C# 的应用程序。(当然,C# 编译的应用程序可以在 Linux 上运行)
从命令行或者 shell 提示符执行应用程序的一个常用方法是使用 ./ 命令。如果您在 Linux 中使用句号 (.) 和正斜杠 (/),就意味着告诉环境您想要以可执行文件运行该文件。例如,运行一个名为 myapp 的可执行文件,您可以使用 ./myapp 命令。同样地,您可以在文件名之前加上语言环境,比如:
sh php python perl java
但更多情况下,套装应用程序使用 shell 脚本,以 #! 符号设置环境变量提供该语言的运行时可执行路径,比如 #!/usr/bin/python。您也应该熟悉这种方法。
清单 1 使用 catalina.sh 默认脚本通过 ./ 方法启动 Apache Tomcat 应用程序服务器。然后,使用 sh 方法启动服务器。因为默认端口是 8080,标准用户不需要对其进行特别修改就可以启动该服务。
Ⅷ linux怎么运行c文件
linux怎么运行c文件呢,下面就让我们来看看吧。Ⅸ linux终端用什么命令运行文件
运行什么文件?python?shell scripts?编译好的可执行文件?
python script.py
sh script.sh 或bash script.sh
绝对路径执行二进制文件/home/user/binary
相对路径user/binary 或 ./user/binary
加入$PATH的目录,直接在终端输入binary