• shell(计算机壳层)(二)


    shell 命令
    常用命令
    cat 文件名 输出文件内容到基本输出(屏幕 or 加>fileName 到另一个文件)
    cb 格式化源代码
    chmod //change mode,改变文件的权限
    cp copy
    date 当前的时间和日期
    echo $abc 在变量赋值之后,只需在变量前面加一个$去引用.
    lint 语法检查程序
    ls dir
    man help
    more type
    du 查看磁盘空间状况
    ps 查看当前进程状况
    who 你的用户名和终端类型
    定义变量 name=abc? (bash/pdksh) || set name = abc (tcsh)
    mkdir 创建目录
    rmdir 删除目录
    cd 进入目录
    rm 删除文件
    more 显示文件
    echo 显示指定文本
    mv 改文件名 /移动文件
    pwd 显示目录路径命令


    用途
    使用用户的缺省凭证和环境执行 shell。
    在UEFI环境下,EFI的Shell环境提供了一组丰富的扩展和增强的命令,
    在以后的计算机中,传统的DOS界面将会被SHELL环境所取代,所有的.exe文件将不会在以后支持SHELL的环境中出现,
    取而代之的文件后缀是.efi。
    在SHELL环境下,分为IA32和X64,32位的*.efi文件不能在X64的计算机中运行。

    描述
    shell 命令重新初始化用户的登录会话。
    当给出该命令时,就会重新设置进程的控制终端的端口特征,并取消对端口的所有访问。
    然后 shell 命令为用户把进程凭证和环境重新设置为缺省值,并执行用户的初始程序。
    根据调用进程的登录用户标识建立所有的凭证和环境。
    如果在可信路径上调用 shell 命令,
    并且 /etc/security/user 文件中用户的 tpath 属性没有 always 值,那么就不维护终端的可信环境。
    注:shell 命令不会重新设置用户的登录标识。


    安全性
    访问控制:该命令应该被 setuid 为 root 用户,以重新设置用户的进程凭证、授权执行(x)访问所有用户。
    该命令应该具有可信计算库属性。
    文件访问:
    方式 文件
    r /etc/passwd
    r /etc/group
    r /etc/security/audit/config
    r /etc/security/environ
    r /etc/security/limits
    r /etc/security/user

    审计事件:
    事件 信息
    USER_Shell portname
    示例
    要在使用可信 shell(tsh)之后将会话重新初始化为缺省凭证和环境,请输入:
    shell

    文件
    /usr/bin/shell 包含 shell 命令。
    /etc/security/user 包含用户的扩展属性。
    /etc/passwd 包含用户标识。
    /etc/group 包含组标识。
    /etc/security/audit/config 包含审计配置信息。
    /etc/security/environ 定义用户的环境属性。
    /etc/security/limits 定义每个用户的进程资源限制。

    希尔(Shell)排序
    希尔(Shell)排序是D.L.Shell于1959年提出的,他属于插入排序方法,是不稳定的排序方法。
    示例如下:
    //希尔排序兄弟们
    #include "iostream.h"
    #include <process.h>
    //using namespace std;//使用命名空间时,要将头文件中的.h去掉
    #define N 50
    void shell_sort(int a[],int len)
    {
        int h,i,j,temp;
        for(h=len/2; h>0; h=h/2)//控制增量
        {
            for(i=h; i<len; i++)//这个for循环就是前面的直接插入排序
            {
                temp=a[i];
                for(j=i-h; (j>=0&&temp<a[j]); j-=h)//循环打印数组的每个元素
                {
                    a[j+h]=a[j];
                }
                a[j+h]=temp;
            }
        }
    }
     
    void print_array(int a[], int len)
    {
        for(int i=0; i<len; i++)
        {
            cout<<a[i]<<"";
        }
        cout<<endl;
    }
     
    void main()
    {
        int a[N];
        int b;
        int M;
        cout<<"请输入要排序的数目"<<endl;
        cin>>M;
     
     
        cout<<"请输入要排序的数"<<endl;
        for(int i=0;i<M;i++)
        {
            cin>>b;
            a[i]=b;
        }
        cout<<"beforeshellsort:";
        print_array(a,M);
        shell_sort(a,M);//进行shell排序
        cout<<"aftershellsort:";
        print_array(a,M);
        //return0;
        system("pause");
    }

    这段代码在VC++ 6.0下编译通过



    VB语句
    含义
    执行一个可执行文件,返回一个Variant (Double),如果成功的话,代表这个程序的任务 ID,若不成功,则会返回 0。
    语法
    Shell(pathname[,windowstyle])
    Shell 函数的语法含有下面这些命名参数:
    部分    描述
    pathname    必要参数。Variant (String),要执行的程序名,以及任何必需的参数或命令行变量,可能还包括目录或文件夹,以及驱动器。
    Windowstyle    可选参数。Variant (Integer),表示在程序运行时窗口的样式。
    如果 windowstyle 省略,则程序是以具有焦点的最小化窗口来执行的。

    windowstyle 命名参数有以下这些值:
    常量    值    描述
    vbHide    0    窗口被隐藏,且焦点会移到隐式窗口。
    VbNormalFocus    1    窗口具有焦点,且会还原到它原来的大小和位置。
    VbMinimizedFocus    2    窗口会以一个具有焦点的图标来显示。
    VbMaximizedFocus    3    窗口是一个具有焦点的最大化窗口。
    VbNormalNoFocus    4    窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。
    VbMinimizedNoFocus    6    窗口会以一个图标来显示。而当前活动的的窗口仍然保持活动。

    说明
    如果Shell 函数成功地执行了所要执行的文件,则它会返回程序的任务 ID。任务 ID 是一个唯一的数值,用来指明正在运行的程序。
    如果 Shell 函数不能打开命名的程序,则会产生错误。

    注意 缺省情况下,Shell 函数是以异步方式来执行其它程序的。
    也就是说,用Shell 启动的程序可能还没有完成执行过程,就已经执行到 Shell 函数之后的语句。

    函数示例
    示例一:
    本示例使用Shell 函数来完成一个用户指定的应用程序。
    ' 将第二个参数值设成1,可让该程序以正常大小的窗口完成,并且拥有焦点。 Dim RetValRetVal = Shell("C:WINDOWSCALC.EXE", 1) ' 完成Calculator。
    示例二:
    使用shell脚本调用linux中当前时间,并记录在log文件中,10秒后再次记录时间。

    date>>/tmp/data.log
    sleep10
    date>>/tmp/data.log

    备注:随笔中内容来源于网上资料整理,仅供参考。

  • 相关阅读:
    201871010104-陈园园《面向对象程序设计(java)》课程学习总结
    201871010104-陈园园《面向对象程序设计(java)》第十七周学习总结
    201871010104-陈园园《面向对象程序设计(java)》第十六周学习总结
    201871010104-陈园园 《面向对象程序设计(java)》第十五周学习总结
    201871010104-陈园园 《面向对象程序设计(java)》第十四周学习总结
    201871010104-陈园园 《面向对象程序设计(java)》第十三周学习总结
    201871010105-曹玉中 实验四 团队作业1:软件研发团队组建
    201871010105-曹玉中 实验三 结对项目—《D{0-1}KP 实例数据集算法实验平台》项目报告
    201871010105-曹玉中 实验二 个人项目—《背包问题》项目报告
    201871010105-曹玉中 实验一 软件工程准备——初识软件工程
  • 原文地址:https://www.cnblogs.com/Alanf/p/7767441.html
Copyright © 2020-2023  润新知