it-swarm.asia

إنشاء اسم مستعار في Windows XP

مرة أخرى في المدرسة ، اعتدت أن يكون لديك ملف .login على غرار

alias ll = ls -l  
alias dir = ls -Fhl  
alias web = cd ~/public/public_www/development  

أرغب في القيام بهذا النوع من الأشياء من خلال صندوقيXPهنا في العمل ، لكن معظم الموارد التي وجدتها عبر الإنترنت تبدو معقدة إلى حد ما وثقيلة الخدمة. هل هناك طريقة للقيام بذلك لا تنطوي على التلويح في السجل أو تشغيل ملف دفعي كبير؟

كان السبب الأصلي لسؤال ذلك هو أنني فقط بحاجة إلى سطر الأوامر لأمر واحد في مجلد واحد محدد ، وأردت أن أكون قادرًا على الوصول إلى هذا المجلد بسرعة عندما أطلقت سطر الأوامر. لكن الإجابة المقبولة لهذا السؤال جيدة جدًا لدرجة أنني قررت السؤال عن مشكلتي الأصلية كسؤال منفصل: التغيير إلى مجلد بدء التشغيل الافتراضي لأمر Windows موجه .

54
Pops

يبدو أن الكثير من الأشخاص لا يعرفون ذلك ، ولكن يمكنك استخدام أداة الماكرو المدمجة doskey ، المشكلة الوحيدة هي أنه لا يحفظ. هناك العديد من الطرق لحل هذا بالرغم من ذلك.

الاستعمال:

doskey ls=dir

سيقوم ls الآن بعمل قائمة دليل مثلما يفعل dir.

إذا كنت تريد استخدام الوسائط مع الأوامر ، استخدم بناء الجملة هذا:

doskey d=dir $*

بالنسبة للمشكلة لإنقاذهم:

  • احفظ جميع الأسماء المستعارة في ملف بهذا التنسيق:
doskey ls = dir 
 doskey .. = cd ..

ووضعها في واحدة من الدلائل في طريقك. سمها شيء قصير مثل a.cmd ، لذلك عندما تفتح cmd يمكنك كتابة a لتحميل الأسماء المستعارة الخاصة بك.

إذا كتابة a والضغط Enter يبدو الكثير من العمل ، ورمي هذا في AutoHotkey النصي:

WinWaitActive, C:\WINDOWS\system32\cmd.exe
Send {a}{Enter}

تحميل الأسماء المستعارة تلقائيًا :

يمكنك تغيير جميع الاختصارات إلى cmd للإشارة إلى %SystemRoot%\system32\cmd.exe /K C:\path\to\aliases.cmd ، مع استبدال C:\path\to\aliases.cmd بموقع ملف الأسماء المستعارة. إذا كنت تديرها عادةً من مربع التشغيل ، فيمكنك:

  • إعادة تسمية cmd القابل للتنفيذ إلى cmd2.exe على سبيل المثال ، واستبدله بنص أو ملف قابل للتنفيذ آخر يقوم بتشغيل الأمر أعلاه (لن أوصي حقًا بهذه الطريقة لأن الكثير من التطبيقات تعتمد على cmd)
  • قم بعمل نص برمجي دفعي واسمه cmda (cmd مع الأسماء المستعارة) على سبيل المثال. قم بتشغيل الأمر أعلاه ووضع هذا البرنامج النصي الدفعي في مكان ما في طريقك.
84
John T

انها بسيطة مثل:

  1. أنشئ ملفًا بأسماء مستعارة ، على سبيل المثال ج:\بن\الأسماء المستعارة :

    ls=dir /ONE $*
    cd=cd /d $*
    python=python -ic "" 
    ps=tasklist $*
    kill=taskkill /IM $*
    
  2. قم بإنشاء ملف به كل العناصر التي تريد تشغيلها عند بدء تشغيل cmd.exe ، بما في ذلك تحميل الأسماء المستعارة باستخدام doskey على سبيل المثال ج:\بن\cmd_autoruns.cmd :

    @echo off
    cls
    color 0A
    doskey /macrofile=c:\bin\aliases
    
  3. قم بإنشاء وتشغيل ملف دفعي (على سبيل المثال set_cmd_autorun.cmd ) والذي سيُعين مفتاح معالج الأوامر Autorun على مفتاحنا cmd_autoruns.cmd :

    reg add "hkcu\software\Microsoft\command processor" /v Autorun /t reg_sz /d c:\bin\cmd_autoruns.cmd
    

كبديل لـ set_cmd_autorun.cmd من الممكن أيضًا إنشاء ملف .reg مثل الملف أدناه ثم دمجه بنقرة مزدوجة:

REGEDIT4

[HKEY_CURRENT_USER\Software\Microsoft\Command Processor]
"CompletionChar"=dword:00000009
"DefaultColor"=dword:00000000
"EnableExtensions"=dword:00000001
"PathCompletionChar"=dword:00000009
"Autorun"="c:\\bin\\cmd_autoruns.cmd"
38
user29888

جوابي مشابه لجواب vriolk

لقد أنشأت ملفًا .bat يحتوي على وحدات الماكرو الخاصة بي (مثل: c:\winscripts\autoexec.bat):

 @ doskey whereis = c:\winscripts\whereis.cmd $ * 
 @ doskey ls = dir/b $ * 
 @ doskey l = dir/od/p/q/tw $ * 

ثم من كمد ركض موجه "كمد /؟" للعثور على مفتاح التسجيل للتحرير من أجل التشغيل التلقائي cmd:

 HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun 
 و/أو 
 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun 

باستخدام regedit ، أضف مسار ملف دفعي الماكرو إلى قيمة التشغيل التلقائي (أضف مفتاح التشغيل التلقائي إذا لم يكن هناك):

ج 
:\winscripts\AUTOEXEC.BAT [. .____]

الآن كلما قمت بتشغيل "cmd" من Start-> Run Prompt ، سيتم تشغيل autoexec.bat أيضًا وإنشاء وحدات ماكرو doskey لك.

بالمناسبة ، whereis.cmd يحتوي على هذا:

@ for ٪٪ e in (٪ PATHEXT٪) أفعل @ for ٪٪ i in (٪ 1 ٪٪ e) أفعل إذا لم "٪٪ ~ $ PATH: i" == "" echo ٪٪ ~ $ PATH: i

الذي يبحث في متغير PATH عن المصطلح الذي تقدمه:

 c:> حيث javaw 
 c:\jdk\bin\javaw.exe
5
andematt

يمكنك إنشاء ملفات .cmd ووضعها في مكان ما في٪ PATH٪ (مثل C:\Windows). لاستخدام اسم الويب المستعار الخاص بك كمثال:

@C:
@cd \inetpub\wwwroot

سوف تفعل شيئا مثل:

M:\> web
C:\inetpub\wwwroot>

لست على علم بأي طريقة لإنشاء ملف .aliases نمط مسطح.

1
djhowell

طريقة سريعة وقذرة للغاية للحصول على اختصار جاهز ، والتي لا تتطلب الكثير من الضجة - تتمثل في إنشاء ملف دفعي يحمل الاسم المستعار ، في أحد الأدلة التي تعد جزءًا من متغير بيئة PATH. على سبيل المثال ، أردت استدعاء Notepad ++ من خلال اسم مستعار ، لذلك قمت بإنشاء npp.bat في C:\WINDOWS التي تحتوي على ما يلي:

"c:\Program Files\Notepad++\notepad++.exe" %1 %2 %3 %4 %5

الآن يمكن استخدام الأمر npp من أي ملف cmd Shell ، دون تشغيل ملفات التشغيل التلقائي و/أو الرحلات إلى السجل

1
hello_earth

الطريقة التي فعلت بها كانت مع برنامج نصي بيثون سريع:

import sys
import string
import os
import glob

def listAll():
        for infile in glob.glob("c:\\aliases\\*.bat"):
            fileName = infile
            fileName = fileName[len("c:\\aliases\\"):len(fileName)-4]
            fileContents = open("c:\\aliases\\" + fileName + ".bat", "r")
            fileContents.readline()
            fileContentString=fileContents.readline()
            fileName += " is aliased to "
            fileName += fileContentString[0:len(fileContentString)-3]
            print fileName

def listSome(which):
        for infile in glob.glob("c:\\aliases\\*.bat"):
            fileName = infile
            fileName = fileName[len("c:\\aliases\\"):len(fileName)-4]
            fileContents = open("c:\\aliases\\" + fileName + ".bat", "r")
            fileContents.readline()
            fileContentString=fileContents.readline()
            if fileName.find(which)==0:
                fileName += " is aliased to "
                fileName += fileContentString[0:len(fileContentString)-3]
                print fileName

if len(sys.argv)>1:
    if sys.argv[1]!="-p":
        file = open("c:\\aliases\\"+sys.argv[1]+".bat", "w")
        file.write("@ECHO OFF\n")
        counter=0
        totalInput=""
        counter=0
        for arg in sys.argv:
            if counter > 1:
                totalInput+= arg + " "
            counter+=1

        if totalInput.find(".exe")!=-1:
            file.write("\"")

        counter=0

        for arg in sys.argv:
            if counter > 1:
                file.write(arg)
                if sys.argv[1]==sys.argv[2]:
                    if counter==2:
                        file.write(".exe")
                temparg=str(arg)
                if temparg.find(".exe")!=-1:
                    file.write("\"")
                file.write(" ")
            counter+=1
        file.write("%*")

        print "Aliased " + sys.argv[1] + " to " + totalInput
    else:
        if len(sys.argv)>2:
            listSome(sys.argv[2])
        else:
            listAll()
else:
    listAll()

الاعتذار عن البرمجة النصية الضعيفة ، لكن الاستخدام لطيف للغاية ، imo. ضعه في مكان ما في طريقك ، أضف .py إلى PATHEXT ، وأضف c:\aliases إلى PATH أيضًا (أو غيره ، مهما كان يناسبك) ، ثم استخدم:

alias <command> <action>

إلى الاسم المستعار (نعم ، لا = ، على الرغم من أنه لن يكون من الصعب إضافة .split هناك) ، و:

alias -p <command or part of>

لعرض ما هو شيء.

سخرية ، لكنها مفيدة بغباء. يوجد نص مكافئ unalias ، لكنني متأكد من أنه يمكنك عمل ذلك.

تحرير: من الواضح أن هذا يتطلب بيثون ، المكتوب على v26 ولكن من المحتمل أن يعمل في أي شيء حديث. كما كان من قبل ، آسف للجودة :)

edit2: في الواقع ، سيكون شيء مثل هذا ولكن إضافة إلى الأشياء doskey سيكون أفضل. يمكنك إضافة أوامر بدء التشغيل إلى cmd باستخدام مفتاح التسجيل التشغيل التلقائي أيضًا ، بحيث يمكن أن يكون أكثر نظافة.

0
Phoshi