Was entspricht dem Linux-Dateibefehl für Windows?

16

Ausführen des Befehls:

file run.sh

Gibt mir:

run.sh: Bourne shell script text executable

unter Linux. Gibt es einen entsprechenden Befehl in Windows?

AabinGunz
quelle
5
Dies ist ein QS-Forum. Nicht Google. Sie sollten versuchen zu suchen, bevor Sie die Leute hier fragen. - gnuwin32.sourceforge.net/packages/file.htm
Noufal Ibrahim
10
@ Noufal: Nein, das solltest du nicht. Fragen und Antworten bedeuten, dass Sie Fragen stellen. Das ist eine Frage. Bei Fragen und Antworten geht es nicht darum, zuerst zu suchen.
Cody Gray
2
Cody: Wohl. Ich denke immer noch, dass einige Nachforschungen vor dem Abfeuern einer Frage eine gute Sache sind.
Noufal Ibrahim
6
Sorry Leute, aber ich habe es mit Google versucht und dann habe ich diese Frage hier gestellt.
1
Der fileBefehl ist per say nicht Teil des Linux-Kernels. Es ist ein Paket, das standardmäßig auf den meisten Distributionen installiert ist. Windows hat so etwas nicht. Die meisten Entscheidungen werden dort eher auf Dateierweiterungen als auf Inhalten getroffen.
Noufal Ibrahim

Antworten:

4

Es gibt wahrscheinlich standardmäßig keine auf Ihrem System. Sie können die Cygwin-Toolsuite installieren (Ports von GNU-Befehlen zu den Win32-APIs). Früher gab es auch das MKS Toolkit und ein anderes, dessen Name mir im Moment entgeht. MKS war kommerziell, Cygwin, natürlich GNU / GPL, und der andere Won wurde schließlich umbenannt (von OpenNT?) Und später von Microsoft erworben und in eine Art MSDN-Suite für Win2K oder Server 2003 oder ähnliches integriert.

Für alle diese Dateien führen Sie den Befehl 'file' für Ihre Zieldateien genauso aus wie unter UNIX. Möglicherweise müssen Sie sie unter der mitgelieferten UNIX-ähnlichen Shell starten (Bash für Cygwin, Ksh oder MKS Toolkit, und wer weiß was für die andere).

Jim Dennis
quelle
Hey, danke für die Info, ich habe auch von MKS gehört und an Cygwin gearbeitet, aber andererseits habe ich mich gefragt, ob es ein Tool gibt, das standardmäßig in Windows verfügbar ist. Trotzdem danke :)
Ich habe cygwin heruntergeladen und konnte dann das cygwin-Installationsverzeichnis auf das System kopieren, auf dem ich den Dateibefehl ausführen wollte, und dann den Befehl file.exe unter dem kopierten cygwin-Verzeichnis aufrufen, ohne cygwin auf dem Zielsystem zu "installieren".
Chris Magnuson
3

1. Sie können git für Windows herunterladen und installieren

In git-bash.exe ist ein Dateibefehl integriert

2. Sie können Windows Build von verwenden file

Link hier https://github.com/nscaife/file-windows/releases

Oder hier https://github.com/julian-r/file-windows/releases

3. Versuchen Sie es mit https://github.com/joeky888/fil

Es ist ein in Go geschriebenes Befehlstool.

Ähnlich wie fileBefehl, jedoch plattformübergreifend ohne Abhängigkeit.

Verwendungszweck:

file <SOME_FILE>
Grüner Vogel
quelle
1

Nicht eingebaut; Windows verwendet Dateierweiterungen, um den Dateityp zu bestimmen. Ich bin mir ziemlich sicher, dass es filein Cygwin einen Hafen gibt .


quelle
@nickgrim :, @ skwllsp: Ich brauchte etwas, das standardmäßig in jedem Windows-System enthalten ist.
@nickgrim: Dies könnte der Fall sein, da Windows Dateierweiterungen verwendet, um den Dateityp zu bestimmen, sodass kein Befehl zum Erstellen vorhanden ist. Wenn ich eine Lösung finde, werde ich sie hier posten. Vielen Dank für Ihre Bemühungen :)
1

Unter Windows 10 können Sie jetzt Bash installieren . Sobald dies installiert ist, haben Sie Zugriff auf denselben Dateibefehl, den Ubuntu verwendet. Es mag ein bisschen übertrieben sein, dies alles nur für den einen Befehl zu tun, aber ich finde es ziemlich nützlich.

Gary
quelle
Da die Mehrheit der Welt jetzt Windows 10 verwendet, sollte diese Antwort meiner Meinung nach akzeptiert werden.
Bosnischer Coder
1

Wenn Sie den Befehl file ausführen möchten, ohne Cygwin vollständig zu installieren, können Sie eine Kopie aus dem GnuWin-Projekt abrufen. Es ist ein älterer Build, aber immer noch nützlich:

http://gnuwin32.sourceforge.net/packages/file.htm

Edward
quelle
0

Schauen Sie sich File.exe an - ein kleines Programm ähnlich der ausführbaren Unix / Linux-Datei, das Dateien untersuchen kann. In diesem Fall dient es dazu, eine ausführbare Datei abzufragen und den Prozessor anzuzeigen, auf dem die Datei kompiliert wurde, und jeden anderen Details, über die es berichten kann.


quelle
0

Versuchen Sie, eine Kopie von cmder.exe zu erhalten, die Sie ohne Installation ausführen können und in die nix-Befehle integriert sind. Sie können auch zusätzliche Befehle hinzufügen, die beim Start in den Pfad geladen werden sollen.

Indigo
quelle