2009-08-03 17 views
2

Wir haben Schwierigkeiten, einen Befehlsnamen für unser Allzweckentwicklerwerkzeug zu finden, das wir in unserem Projekt verwenden. Es ist wie ein Wrapper für unsere bestehenden Werkzeuge wie cmake und hg. Der Zweck des Befehls besteht eigentlich nur darin, unser Leben einfacher zu machen, indem wir mehrere Befehle zu einem kombinieren (zum Beispiel das Veröffentlichen von Paketen). Zum Beispiel haben wir Befehle wie:Was ist eine gute Methode, um einen Befehlsnamen zu erfinden?

do conf 
do build 
do install 
do publish 

Wir haben ein paar zweideutigen Namen wie do betrachtet (wie oben) und run, aber offensichtlich, do ist ein Linux-Bash-Befehl und run ist ziemlich eindeutig.

Wir möchten, dass unser Befehl 2 Zeichen kurz ist, vorzugsweise - aber wer denkt, dass wir das Unmögliche verlangen? Gibt es eine praktische Möglichkeit, die Verfügbarkeit von Befehlsnamen zu überprüfen (außer sie einfach in Ihr Terminal einzugeben), oder ist es nur ein Fall, einen zu wählen und zu hoffen, dass ihn niemand sonst benutzt? Sorgen wir uns um nichts?

+0

Welche Plattform? GNU/Linux? Überprüfen Sie die Manpages. Windows? Überprüfen Sie die Hilfe. –

+1

Windows, Mac OS X und Linux. –

Antwort

6

Da es ein „Entwickler Helfer“ Werkzeug ist, warum nicht hm [run|build|port|deploy|test] verwenden, helfen Sie mir ...

+0

Ich mag diesen Vorschlag am besten so weit :) –

0

Verwenden Sie makefiles, um alles für Sie zu tun.

+0

Hehe, danke, aber wir benutzen CMake :) –

0

Wie wäre es mit etwas beschreibenden, wie "build_runner", und dann nur Alias ​​in "br" (oder bevorzugte Akronym) in Ihrem .bashrc?

+0

Hmm, es ist nicht nur für den Bau, es ist ein Allzweckwerkzeug. Danke trotzdem. –

2

Wie viele 2-stellige Wörter sind in diesem Zusammenhang nützlich? Ich denke du brauchst vier. In diesem Sinne sind hier einige Vorschläge.

omni 
torq 
fluf 
mega 
spif 
crnk 
splt 
argh 
quat 
drul 
scud 
prun 
sqat 
zoom 
sizl 

Ich habe mehr, wenn Sie sie brauchen.

+2

Lol. Meine Stimme ist für argh –

+0

Mein Freund schlug vor, rofl. Ich fürchte, das könnte ein wenig verwirrend sein. –

0

Es gibt ein wirklich beschissen Werkzeug namens Cleartool (Teil von Clearcase), und die Leute werden es auf ihrer Maschine zu "ct". Vielleicht können Sie einen längeren Befehl haben und vorschlagen, dass Benutzer ihn als Alias ​​verwenden.

0

Es wäre wahrscheinlich am besten sein, etwas zu tun, wie ire_and_curses vorgeschlagen, nennen Sie es deskriptiv dann alias es zu einem 2-Buchstaben-Befehl. Wenn ich wählen würde, würde ich es dev_help nennen und es zu dh.

+0

Zusammenstöße mit debian Helfer – Draemon

1

Ich denke, dass run ist ein guter Name, zumindest jemand, der Ihr Projekt herunterladen wird wissen, was zu tun ist. Wenn Sie es ohne Parameter aufrufen, sollten Sie Ihre Optionen anzeigen.

Selbst 'do' wird tun, ich denke, Sie können Backquotes verwenden, um es aus Bash-Skripten auszuführen.

Denken Sie auch daran, dass das Ausführen der Tools ohne Parameter Ihnen sagen wird, welche Optionen Sie haben.

+0

'run', 'doit', 'exe' und dergleichen sind schrecklich zweideutige Worte. was rennen? –

0

Ich denke, du sorgst dich um nichts. Installieren Sie das Programm als 'das-Befehl-zu-tun-er-und-wenn-Sie-nicht-machen-Ihren-eigenen-Alias-für-es-Sie-sollten'. Ich denke nicht, dass dies für moderne Dateisysteme zu lang sein wird, aber Sie müssen es vielleicht auf "tctdeaiydmyoafiys" verkürzen. Sehen Sie sich an, welche gängigen Aliase verwendet werden, und ändern Sie dann den Namen des Programms in diesen. Mit anderen Worten: Entscheide dich nicht, lass die natürliche Selektion für dich entscheiden. Wenn Sie mit einem Team von < 10 arbeiten, sollte dies nicht im entferntesten Probleme verursachen.

3

Geben Sie ihm einen ausführlichen Namen, dann lassen Sie ihn alle zu dem alias machen, was sie wollen. Stellen Sie sicher, dass Sie den ausführlichen Namen in anderen Skripts verwenden, um Mehrdeutigkeiten zu vermeiden.

Auf diese Weise kann jeder Benutzer verwenden, was auch immer für ihn Sinn macht, und die Skripte sind lesbarer und leichter durchsuchbar (z. B. grepping vier "our_cool_tool" führt normalerweise zu besseren Ergebnissen als grepping für "run").

+1

Das funktioniert nur so lange ich nur an meinen eigenen Systemen festhalte. Ich kann "svn update" auf jeder beliebigen CLI auf einem Rechner eingeben, der Subversion unterstützt. Wenn es "subversion-command update-working-copy" wäre und die Leute es mit einem Aliasnamen versehen würden, würde ich nie wissen, wie ich es auf das System eines anderen eingeben könnte. –

+0

@David: sie würden 'subversion-command update-working-copy' eingeben, nicht wahr? Ich stimme zu, dass es in Ihrem Beispiel zu ausführlich ist, aber das ist etwas anderes. –

+0

statt "wortreich" hätte ich "sofort erkennbar" sagen sollen. svn ist ein perfektes Beispiel - kurz, aber sofort erkennbar. Finden Sie dasselbe für Ihr Produkt, aber beschränken Sie sich nicht auf zwei Zeichen.Wählen Sie etwas sinnvoll und völlig eindeutig, wenn die Leute etwas kürzer wollen, können sie ihren eigenen Alias ​​erstellen. –

0

Nennen Sie es devtool Alias ​​dt

1

verwende ich "asd". es ist kurz und die meisten Entwickler geben Sie es ohne zu Denken (oh, und Sie können immer später behaupten, dass es für einige „Advanced Script for Developers“ steht, wenn Sie sich in ein paar Jahren nun rechtfertigen müssen)

2

Um die Verfügbarkeit von Befehlsnamen zu überprüfen, empfehle ich, nach allen aus zwei Buchstaben bestehenden Dateinamen zu suchen, die sich in den Verzeichnissen Ihres Pfads befinden. Sie können wie diese zeigen nicht builtins Es

for item in `echo $PATH | sed 's/:/ /g'` ; do 
     ls -1d $item/?? 
done 

ein Skript verwenden, in der Shell (wie „do“ wie Sie bereits erwähnt), aber es ist ein guter Anfang.

Ändern ?? zu ??? für Drei-Buchstaben-Dateien usw.

Ich werde für qp (schnelles Paket?) abstimmen, da es einfach auszusprechen ist, einfach zu tippen und leicht zu merken, wo die Tasten auf der Tastatur sind.

1

Wie wäre es fu? Wie in Kung Fu. Es ist ein Spezialwerkzeug. Und es ist wirklich einfach zu tippen.

0

Benutzerdefinierte Tools wie das möchte ich mit dem Präfix "jj-" beginnen. Ich kann (mit großer Zeigefingerstärke) "jj" eingeben und alle meine persönlichen Befehle sehen. Sie gruppieren sich auch in alphabetischen Listen. "J" ist kein sehr gebräuchliches Zeichen für integrierte Befehle, Sie können jedoch auch eigene auswählen.

Da Sie zwei Zeichen wollen, können Sie nur 'zz' verwenden, oder etwas, das mit 'z' beginnt.

Sind Sie sicher, dass Sie alle Ihre Funktionen in einem Befehl zusammenfassen möchten? Das könnte gleichzeitig die Schnittstelle ein wenig einschränken und überladen.

Verwandte Themen