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

网站建设销售找客户话术知名品牌营销案例100例

网站建设销售找客户话术,知名品牌营销案例100例,廊坊快速排名优化,上海做网站公司排名环境变量 文章目录环境变量一、基本概念二、常见环境变量三、查看环境变量的方法四、测试PATH五、测试HOME六、测试SHELL七、环境变量相关的命令八、环境变量的组织方式九、命令行参数十、通过代码获得环境变量十一、通过系统调用获取环境变量十二、环境变量通常是具有全局属性…环境变量 文章目录环境变量一、基本概念二、常见环境变量三、查看环境变量的方法四、测试PATH五、测试HOME六、测试SHELL七、环境变量相关的命令八、环境变量的组织方式九、命令行参数十、通过代码获得环境变量十一、通过系统调用获取环境变量十二、环境变量通常是具有全局属性的一、基本概念 环境变量environment variables一般是指在操作系统中用来指定操作系统运行环境的一些参数。 例如我们编写的C/C代码在各个目标文件进行链接的时候从来不知道我们所链接的动静态库在哪里但是照样可以链接成功生成可执行程序原因就是有相关环境变量帮助编译器进行查找。 环境变量通常具有某些特殊用途并且在系统当中通常具有全局特性。 我们都清楚自己写的一串代码经过编译后生成可执行程序我们用./即可运行但是系统里有些命令也是64位的可执行程序 既然都是程序那就可以把你自己的写的程序叫做指令把系统的指令叫做命令程序or二进制文件。所以自己写的程序和系统中的指令没区别均可以称为指令、工具、可执行程序。 二、常见环境变量 PATH 指定命令的搜索路径。HOME 指定用户的主工作目录即用户登录到Linux系统中的默认所处目录。SHELL 当前Shell它的值通常是/bin/bash。 三、查看环境变量的方法 我们可以通过echo命令来查看环境变量方式如下 echo $NAME //NAME为待查看的环境变量名称 例如查看环境变量PATH。 echo $PATH四、测试PATH 大家有没有想过这样一个问题为什么执行ls命令的时候不用带./就可以执行而我们自己生成的可执行程序必须要在前面带上./才可以执行 容易理解的是要执行一个可执行程序指令必须要先找到这个程序既然不带./就可以执行ls命令说明系统能够通过ls名称默认帮助我们找到ls的位置而系统是无法找到我们自己的可执行程序的所以我们必须带上./以此告诉系统该可执行程序位于当前目录下。 而系统就是通过环境变量PATH来找到ls命令的查看环境变量PATH我们可以看到如下内容 可以看到环境变量PATH当中有多条路径这些路径由冒号隔开当你使用ls命令时系统就会查看环境变量PATH然后默认从左到右依次在各个路径当中进行查找。 而ls命令实际就位于PATH当中的某一个路径下所以就算ls命令不带路径执行系统也是能够找到的。 那可不可以让我们自己的可执行程序也不用带路径就可以执行呢 当然可以下面给出两种方式 方式一将可执行程序拷贝到环境变量PATH的某一路径下 既然在未指定路径的情况下系统会根据环境变量PATH当中的路径进行查找那我们就可以将我们的可执行程序拷贝到PATH的某一路径下此后我们的可执行程序不带路径系统也可以找到了。 sudo cp myproc /usr/bin/但是并不建议把你自己写的可执行程序随意添加到系统里因为我们写的程序没有经过测试可能会污染指令池。我们执行下面的命令删除即可 sudo rm /usr/bin/myproc方式二使用exprot命令将可执行程序所在的目录添加到环境变量PATH中 将可执行程序所在的目录导入到环境变量PATH当中这样一来没有指定路径时系统就会来到该目录下进行查找了。 export PATH$PATH:/home/wei/106/linux/lesson13将可执行程序所在的目录添加到环境变量PATH当中并且在后面追加myproc的当前路径。位于该目录下的可执行程序也就可以在不带路径的情况下执行了。PATH中不能由空格因为Linux中以空格为分隔符。 如果想删除这个环境变量的话执行【unset】命令。 我们通过下图也能发现命令行可以定义本地变量和环境变量。 学过Java的同学应该都知道我们在最开始学习Java时需要在Windows中配置环境变量其实其本质就是向PATH中添加内容 (Windows中的路径以分号分割) 五、测试HOME 任何一个用户在运行系统登录时都有自己的主工作目录家目录环境变量HOME当中即保存的该用户的主工作目录。 普通用户示例 超级用户示例 六、测试SHELL 我们在Linux操作系统当中所敲的各种命令实际上需要由命令行解释器进行解释而在Linux当中有许多种命令行解释器例如bash、sh我们可以通过查看环境变量SHELL来知道自己当前所用的命令行解释器的种类。 而该命令行解释器实际上是系统当中的一条命令当这个命令运行起来变成进程后就可以为我们进行命令行解释。 环境变量是怎么来的 我们 “ls -al /home/wei” 可以发现家目录下存在两个隐藏文件 – .bash_profile 与 .bashrc .bash_profile .bashrc 实际上当我们在登录 shell 时操作系统会让我们当前的 shell 进程执行 .bash_profile 中的内容而 .bash_profile 又会调用执行 .bashrc它们会将对应的环境变量导入到 shell 进程的上下文环境中。所以如果我们上面不小心将 $PATH 覆盖掉了也不用担心重新登录 shell 就好了。 至此环境变量的定义如下 环境变量是操作系统为了满足不同的应用场景预先在系统内设置的一大批全局变量这些变量往往具有特殊功能且能够一直被 bash 以及 bash 的子进程访问。 注环境变量具有全局属性的根本原因是环境变量会被子进程继承。 七、环境变量相关的命令 1、echo显示某个环境变量的值 2、export设置一个新的环境变量 我们也使用export可以导出环境变量使用env显示环境变量 3、env显示所有的环境变量 部分环境变量说明 环境变量名称表示内容PATH命令的搜索路径HOME用户的主工作目录SHELL当前ShellHOSTNAME主机名TERM终端类型HISTSIZE记录历史命令的条数SSH_TTY当前终端文件USER当前用户MAIL邮箱PWD当前所处路径LANG编码格式LOGNAME登录用户名 4、set显示本地定义的shell变量和环境变量 不加export定义的就是本地变量可以通过set命令查看本地变量也可以查看环境变量 5、unset清除环境变量 八、环境变量的组织方式 在系统当中环境变量的组织方式如下 每个程序都会收到一张环境变量表环境表是一个字符指针数组每个指针指向一个以’\0’结尾的环境字符串最后一个字符指针为空。 九、命令行参数 前面获取环境变量是通过命令行的方式下面我将通过代码程序来演示如何获取环境变量。 问main函数可以带参数吗最多可以带多少 其实main函数的参数有3个只是平时不经常用到所以不太熟悉他们 int main(int argc, char* argv[], char* envp[]) {return 0; }int argc数组里的元素个数 char argv[ ]指针数组* 我们先谈它的前两个参数先来一段代码作为测试用例 运行结果如下 main函数的第二个参数是一个字符指针数组此数组的下标0的位置存储的是你命令行的第一个位置可执行程序所以这里是第一行为argv[0]./myproc。其余的字符指针存储的是命令行对应的选项所以会出现argv[1]-a……而main函数里的第一个参数存储的是数组里的元素个数。 总结我们给main函数传递的argcchar* argv[ ]是命令行参数传递的内容是命令行中输入的程序名和选项并且结尾以NULL束 **问**main函数传这些参数的意义是什么 下面我们可以尝试编写一个简单的代码该代码运行起来后会根据你所给选项给出不同的提示语句。 #include stdio.h #include string.hint main(int argc, char *argv[], char* envp[]) {if(argc 1){if(strcmp(argv[1], -a) 0){printf(you used -a option...\n);}else if(strcmp(argv[1], -b) 0){printf(you used -b option...\n);}else{printf(you used unrecognizable option...\n);}}else{printf(you did not use any option...\n);}return 0; }**综上**同一个程序通过传递不同的参数让同一个程序有不同的执行逻辑执行结果。Linux系统中会根据不同的选项让不同的命令可以有不同的表现这就是指令中各个选项的由来和起作用的方式这也就是命令行参数的意义同样也就是main函数参数的意义。 下面来谈下main函数的第三个参数 int main(int argc, char* argv[], char* envp[]) {return 0; }char*envp[] 就是环境变量。也是一个字符指针数组前面的argv是指向的命令行参数字符串而这里envp指向的是一个一个环境变量字符串最后也是以NULL结尾。结构图如下 我们以如下代码来测试第三个参数 int main(int argc, char* argv[], char* envp[]) {for (int i 0; env[i]; i){printf(envp[%d]: %s\n, i, envp[i]);}return 0; }**总结**一个进程是会被传入环境变量参数的。 **补充**一个函数在声明和定义的时候都没有参数那么我实际传参的时候可以传参。 十、通过代码获得环境变量 上面在学习main函数的三个参数的时候我们得知通过main函数的第三个参数可以获得环境变量 我们也可以通过第三方变量environ获取 十一、通过系统调用获取环境变量 除了通过main函数的第三个参数和第三方变量environ来获取环境变量外我们还可以通过系统调用getenv函数来获取环境变量。 getenv可以通过目标环境变量名进行查找返回一个对应的字符指针从而直接获得环境变量的内容 问我为什么要获得环境变量 假设我们当前的用户USER为wei但是我只允许自己使用不允许其它人访问就可以用获得环境变量来解决 此时用wei用户是可以正常访问的但是zxy用户就不能了 综上环境变量一定在某些地方有特殊用途上面粗略的展示了其中一个方面。 十二、环境变量通常是具有全局属性的 先来回顾下bash进程 我们先前说过子进程pid每次运行的结果是在不断变化的因为其每次运行进程都在重启但是父进程是不变的因为父进程就是bash是系统创建的命令行解释器 如果我现在把bash杀掉出现的结果是我输入任何命令都没有反应了命令行直接挂掉。所以我们能够正常使用命令行是因为这些命令本身就是被bash进程获得的。而这个bash进程是在我们登录系统时系统自动帮你创建的。命令行中启动的进程父进程全都是bash。 下面来理解环境变量具有全局属性 看如下代码在原有的pid和ppid基础上添加了获取环境变量 通过运行结果得知我们的进程刚开始并不存在环境变量但是若我们自己导出一个环境变量此时就获取到了环境变量 总结 环境变量是会被子进程继承下去的类比于从bash进程开始往后创建一大批的子进程若在bash进程的位置就创建了export环境变量那么此环境变量就会从定义处bash位置开始被所有的子进程拿到。所以环境变量具有全局属性 而本地变量之所以在本地有效是因为本地变量是在bash内部定义的变量不会被子进程继承下去 补充 这里local_val是一个本地变量命令行中启动的所有程序都要创建子进程echo也是一个命令、一个子进程 你父bash内定义的local_val变量怎么能被子进程读到呢不是说本地变量不会被子进程读到吗后面为何能用echo打出hello呢 Linux下大部分命令是通过子进程的方式执行的但是还有一部分命令不通过子进程的方式执行而是由bash自己执行调用己的对应的函数来完成特定的功能我们把这种命令叫做内建命令。
http://www.hkea.cn/news/14310255/

相关文章:

  • 免费做长图的网站公司网站建设费用 知乎
  • 宝山做手机网站建设营销有哪些基本内容
  • 做动态图片的网站吗专业手机网站建设
  • 做网站时的注册权起到什么作用WordPress与dz用户恭喜
  • 烂网站做竞价行吗宁波城乡建设网站
  • 网站开发系统架构图wordpress点播视频模版
  • 淘客怎么建网站做推广厦门seo优
  • 电视台网站建设方案.docwordpress 热门排行
  • 手机网站策划书2345网址导航下载到桌面
  • 淘宝网站建设h5和手机网站
  • 尖扎网站建设公司装修设计的网站
  • 山东省建设厅网站一体化平台wp网站建设模板
  • 大型购物网站设计移动端显卡
  • 织梦网站地图怎么做xml网页翻译扩展
  • 网站怎么实现两种语言花都网站推广
  • 公司网站建设计划书专业制作网站用哪些软件
  • 当当网站建设优点网站左侧图片悬浮代码
  • 苏州高端网页设计宁波seo整体优化公司
  • 外贸自建站平台怎么选旅游网站的设计与建设
  • 宜春网站建设前端直播网站怎么做
  • 英文模板网站中国城乡住房和城乡建设部网站首页
  • 做消防哪些网站找工作门户网站建设软件
  • 网站备案中打不开网页空间网站
  • 怎么制做网站网站app开发计划书
  • 个人备案的域名拿来做别的网站网站建设职业怎么样
  • 泰安市建设信息网站销售管理系统模板
  • 建设人行官方网站重庆做网站设计
  • 美食网站建设项目预算o2o网站建设效果
  • 淮安高端网站制作济南行知网站制作
  • 中国域名网站网络营销与管理专业