我整理的关机类

  1. using System;
  2. using System.Runtime.InteropServices  ;
  3. namespace System.Shangfei.Window
  4. {
  5.     namespace exitwindow
  6.     {
  7.         /// <summary>
  8.         /// ExitWin 的摘要说明。
  9.         /// </summary>
  10.         public class ExitWin
  11.         {
  12.             public ExitWin(string RegClient)
  13.             {
  14.             }
  15.             [StructLayout(LayoutKind.Sequential, Pack=1)] 
  16.                 internal struct TokPriv1Luid 
  17.             { 
  18.                 public int Count; 
  19.                 public long Luid; 
  20.                 public int Attr; 
  21.             } 
  22.             [DllImport("kernel32.dll", ExactSpelling=true) ] 
  23.             internal static extern IntPtr GetCurrentProcess(); 
  24.             [DllImport("advapi32.dll", ExactSpelling=true, SetLastError=true) ] 
  25.             internal static extern bool OpenProcessToken( IntPtr h, int acc, ref IntPtr phtok ); 
  26.             [DllImport("advapi32.dll", SetLastError=true) ] 
  27.             internal static extern bool LookupPrivilegeValue( string host, string name, ref long pluid ); 
  28.             [DllImport("advapi32.dll", ExactSpelling=true, SetLastError=true) ] 
  29.             internal static extern bool AdjustTokenPrivileges( IntPtr htok, bool disall, 
  30.                 ref TokPriv1Luid newst, int len, IntPtr prev, IntPtr relen ); 
  31.             [DllImport("user32.dll", ExactSpelling=true, SetLastError=true) ] 
  32.             internal static extern bool ExitWindowsEx( int flg, int rea ); 
  33.             internal const int SE_PRIVILEGE_ENABLED = 0x00000002; 
  34.             internal const int TOKEN_QUERY = 0x00000008; 
  35.             internal const int TOKEN_ADJUST_PRIVILEGES = 0x00000020; 
  36.             internal const string SE_SHUTDOWN_NAME = "SeShutdownPrivilege"
  37.             internal const int EWX_LOGOFF = 0x00000000; 
  38.             internal const int EWX_SHUTDOWN = 0x00000001; 
  39.             internal const int EWX_REBOOT = 0x00000002; 
  40.             internal const int EWX_FORCE = 0x00000004; 
  41.             internal const int EWX_POWEROFF = 0x00000008; 
  42.             internal const int EWX_FORCEIFHUNG = 0x00000010;
  43.             private static void DoExitWin(int flg)
  44.             {
  45.                 bool ok;
  46.                 try
  47.                 {
  48.                     TokPriv1Luid tp;
  49.                     IntPtr hproc = GetCurrentProcess();
  50.                     IntPtr htok = IntPtr.Zero;
  51.                     ok = OpenProcessToken(hproc, TOKEN_ADJUST_PRIVILEGES | TOKEN_QUERY, ref htok);
  52.                     tp.Count = 1;
  53.                     tp.Luid = 0;
  54.                     tp.Attr = SE_PRIVILEGE_ENABLED;
  55.                     ok = LookupPrivilegeValue(null, SE_SHUTDOWN_NAME, ref tp.Luid);
  56.                     ok = AdjustTokenPrivileges(htok, falseref tp, 0, IntPtr.Zero, IntPtr.Zero);
  57.                     ok = ExitWindowsEx(flg, 0);
  58.                 }
  59.                 catch
  60.                 {
  61.                 }
  62.             }
  63.             public static void Shotdown()
  64.             {
  65.                 DoExitWin( EWX_SHUTDOWN+EWX_FORCEIFHUNG+EWX_POWEROFF ); 
  66.             }
  67.             public static void ShotdownForce()
  68.             {
  69.                 DoExitWin( EWX_SHUTDOWN+EWX_FORCE +EWX_POWEROFF); 
  70.             }
  71.             public static void Reboot() 
  72.             { 
  73.                 DoExitWin( EWX_REBOOT ); 
  74.             } 
  75.         }
  76.     }
  77. }
<think>好的,我现在需要帮助用户整理常用的Linux命令分。用户已经提供了三个引用内容,我需要从中提取相关信息,并按照分组织起来。首先,我要仔细看看每个引用里的内容。 引用[1]主要提到了一些基本命令,但没有具体分。引用[2]则提到了lsblk、mkfs、mount、df、du这些命令,属于磁盘和文件系统管理相关的。此外,还提到了软件安装。引用[3]的目录结构非常详细,列出了很多分,比如系统信息、关机重启、文件和目录、文件搜索、挂载文件系统、磁盘空间、用户和群组、文件权限、打包压缩、RPM包、YUM升级器、查看文件内容、文本处理、字符设置、文件系统分析、备份、网络等。 接下来,我需要将这些分整合起来,确保每个别下列出对应的常用命令。比如系统信息可能包括arch、uname、uptime、free等。关机重启涉及shutdown、reboot、logout。文件和目录部分有ls、cd、pwd、mkdir等。文件搜索是find和locate。挂载文件系统包括mount、umount。磁盘空间管理用df、du。用户和群组涉及useradd、groupadd。文件权限是chmod、chown。打包压缩用tar、gzip。软件安装包括rpm、yum。查看文件内容可以用cat、head、tail。文本处理有grep、awk、sed。网络相关命令如ifconfig、ping、ssh。进程管理包括ps、kill、top。这些都是常见的分。 然后,我需要检查是否有重复或遗漏的部分。例如,引用[2]提到的lsblk可以放在磁盘管理里。软件安装单独作为一个分。备份部分可能需要tar或者dd命令。确保每个命令归正确,并参考引用中的例子,比如mkfs.ext4和mount的使用。 最后,整理成用户容易理解的结构,分点列出每个别和对应的命令及示例。同时,注意使用正确的LaTeX格式,行内公式用$...$,独立公式用$$...$$,但这里可能用不到数学公式,所以主要确保命令示例的正确排版。例如代码块用反引号包裹,保持格式一致。 可能还需要补充一些常用但引用中没有明确提到的命令,比如进程管理中的top、kill,或者网络中的netstat。但根据用户提供的引用,主要依据引用内容来整理,避免加入外部知识。所以,严格按照引用中的分和命令来组织,确保准确性和相关性。</think>### 常用 Linux 命令分整理 以下是基于Linux常用功能的分整理,每个别列出核心命令及简要说明,部分命令附带使用示例[^2][^3]。 --- #### 1. **系统信息** | 命令 | 说明 | 示例 | |-----------|-----------------------------|-------------------------| | `arch` | 显示处理器架构 | `arch` | | `uname` | 显示系统信息 | `uname -a` | | `uptime` | 显示系统运行时间及负载 | `uptime` | | `free` | 查看内存使用情况 | `free -h` | --- #### 2. **关机、重启与登录** | 命令 | 说明 | 示例 | |-------------|---------------------|---------------------| | `shutdown` | 关机或重启 | `shutdown -h now` | | `reboot` | 立即重启 | `reboot` | | `logout` | 退出当前登录会话 | `logout` | --- #### 3. **文件与目录管理** | 命令 | 说明 | 示例 | |----------|---------------------|-------------------------------| | `ls` | 列出目录内容 | `ls -l /home` | | `cd` | 切换目录 | `cd /var/log` | | `pwd` | 显示当前目录路径 | `pwd` | | `mkdir` | 创建目录 | `mkdir -p /tmp/test/dir` | | `rm` | 删除文件或目录 | `rm -rf /tmp/test` | --- #### 4. **文件搜索** | 命令 | 说明 | 示例 | |-----------|---------------------|-------------------------------| | `find` | 按条件搜索文件 | `find / -name "*.log"` | | `locate` | 快速搜索数据库中的文件 | `locate nginx.conf` | --- #### 5. **磁盘与文件系统** | 命令 | 说明 | 示例 | |------------|---------------------|-------------------------------| | `lsblk` | 列出块设备信息 | `lsblk` | | `mkfs` | 格式化文件系统 | `mkfs.ext4 /dev/sda1` | | `mount` | 挂载文件系统 | `mount /dev/sda1 /mnt` | | `df` | 查看磁盘空间使用情况 | `df -h` | | `du` | 估算目录空间占用 | `du -sh /var/log` | --- #### 6. **用户与权限管理** | 命令 | 说明 | 示例 | |-------------|---------------------|-------------------------------| | `useradd` | 创建用户 | `useradd alice` | | `passwd` | 修改用户密码 | `passwd alice` | | `chmod` | 修改文件权限 | `chmod 755 script.sh` | | `chown` | 修改文件所有者 | `chown alice:group file.txt` | --- #### 7. **软件包管理** | 命令 | 说明 | 示例 | |------------|---------------------|-------------------------------| | `rpm` | RPM包管理工具 | `rpm -ivh package.rpm` | | `yum` | 自动解决依赖的包管理器 | `yum install nginx` | --- #### 8. **文本处理与查看** | 命令 | 说明 | 示例 | |------------|---------------------|-------------------------------| | `cat` | 查看文件内容 | `cat /etc/os-release` | | `grep` | 文本搜索 | `grep "error" /var/log/syslog`| | `awk` | 文本分析工具 | `awk '{print $1}' access.log`| | `sed` | 流编辑器 | `sed 's/foo/bar/g' file.txt` | --- #### 9. **网络管理** | 命令 | 说明 | 示例 | |-------------|---------------------|-------------------------------| | `ifconfig` | 查看网络接口信息 | `ifconfig eth0` | | `ping` | 测试网络连通性 | `ping google.com` | | `ssh` | 远程登录 | `ssh user@192.168.1.100` | --- #### 10. **进程管理** | 命令 | 说明 | 示例 | |------------|---------------------|-------------------------------| | `ps` | 查看进程状态 | `ps aux` | | `kill` | 终止进程 | `kill -9 1234` | | `top` | 动态查看系统进程 | `top` | ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值