当前位置:  技术问答>linux和unix

一个很有趣的命令行的事

    来源: 互联网  发布时间:2016-05-14

    本文导语:  刚刚发现命令行运行一个程序时有趣的现象,现在和大家分享一下. 先请大家看一段非常简单的程序: #include  int main(         int     argc,         char    **argv){         int i = 0;         if ( argc...

刚刚发现命令行运行一个程序时有趣的现象,现在和大家分享一下.
先请大家看一段非常简单的程序:

#include 
int main(
        int     argc,
        char    **argv){
        int i = 0;

        if ( argc 
>
-bash-3.00$

我接着试了以下几种情况,就是想传入参数""和'':
-bash-3.00$ ./Parameter """" (传参数"",得到空)
There are 2 parameters in cmd:
         ./Parameter                    
-bash-3.00$ ./Parameter '""'(传参数"",得到"")
There are 2 parameters in cmd:
         ./Parameter                  ""
-bash-3.00$ ./Parameter "''"(传参数''(‘’),得到'')
There are 2 parameters in cmd:
         ./Parameter                  ''
-bash-3.00$ ./Parameter ''''(传参数''(‘’),得到空)
There are 2 parameters in cmd:
         ./Parameter 

|
楼主糊涂了,
./Parameter *
There are 5 parameters in cmd:
        ./Parameter          Parameter        Parameter.c              PrintP            PrintP.c
这个就更奇怪了,本来想传入字母'*',但传入的确多了很多参数,原来把*作为参数传入是将本路很下所有的文件名作为参数传入,但是参数的顺序我现在还没有发现规律,至少不是按时间先后,也不是按文件名的字母排序(两个验证后都不是).

*字符在Bash下会扩展的,在这里就是扩展成当前目录下的所有文件,这明显是按文件名字母排序的呀。

在bash下,* " ' ` 等很多都是特殊字符,使用的时候要用符号转义的。

./Parameter *
./Parameter ''

..........

|
学习

|
对一些特殊字符,可以在前面加来表示。

|
./

    /
   /
  /
./

 对

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • windows下cmd命令行显示UTF8字符设置(CHCP命令)
  • linux在脚本执行命令和直接在命令行执行命令有什么区别
  • c/c++预处理命令预#error介绍
  • 请教:使用system(命令)或者exec(命令)启动一个进程执行命令,如何判断这个命令是否启动成功或正在运行?
  • linux下nm命令(显示可执行文件的符号信息)介绍以及常见nm命令用法举例
  • linux 的命令操作和 windows的命令提示行有什么不同呢?? 为什么windows一般都不用命令提示行操作呢??
  • Centos6下安装Shell下文件上传下载rz,sz命令
  • 使用ps命令,如何使用系统命令根据进程名称获取进程和子进程的ID?除了ps,还有其它系统命令的办法吗?谢谢。
  • c/c++预处理命令预#undef介绍
  • 如何运行外部命令后不等外部命令运行结束直接运行下一条命令
  • c/c++预处理命令预#pragma介绍
  • 请问:早redhat 7.3的字符模式下:改(设)IP 命令是:ifconfig eth0 192.168.0.xx ,那么改(设)掩码命令是什么呢? 还有改(设)网关地址命令是什
  • Linux常用命令介绍:更改所属用户群组或档案属性
  • 请教unix常用命令命令问题
  • python下用os.execl执行centos下的系统时间同步命令ntpdate
  • linux下执行命令为什么要在命令前加./
  • c/c++预处理命令预#line介绍
  • 查询ls命令的命令文件属于系统中的哪个软件包?(在线等)
  • c/c++预处理命令预#include介绍
  • linux命令行下使用curl命令查看自己机器的外网ip
  • linux命令大全详细分类介绍及常用linux命令文档手册下载
  • linux中有没有什么命令能列出所有linux的内部命令


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3