OSX पर स्टेट का आउटपुट


15

मैं statएक फाइल पर जानकारी प्राप्त करने के लिए कमांड का उपयोग करना चाहता हूं । इसे मैने किया है:

Josephs-MacBook-Pro:Desktop Joseph$ echo 'hello' > info.txt
Josephs-MacBook-Pro:Desktop Joseph$ stat info.txt
16777220 21195549 -rw-r--r-- 1 Joseph staff 0 6 "Dec 21 20:45:31 2014" "Dec 21 20:45:30 2014" "Dec 21 20:45:30 2014" "Dec 21 20:45:30 2014" 4096 8 0 info.txt

तीसरी और चौथी पंक्ति मेरे द्वारा प्राप्त आउटपुट है। यह तब होता है जब भी मैं statकमांड का उपयोग करता हूं । इस बीच इंटरनेट पर सभी को सामान मिलता है जैसे:

File: `index.htm'
Size: 17137 Blocks: 40 IO Block: 8192 regular file
Device: 8h/8d Inode: 23161443 Links: 1
Access: (0644/-rw-r--r--) 
Uid: (17433/comphope) Gid: ( 32/ www)
Access: 2007-04-03 09:20:18.000000000 -0600
Modify: 2007-04-01 23:13:05.000000000 -0600
Change: 2007-04-02 
16:36:21.000000000 -0600

मैंने टर्मिनल और iTerm 2 पर और एक नए सत्र में यह कोशिश की। उसी लैपटॉप पर, मैं अपने CentOS सर्वर से जुड़ा और उसी कमांड में डाल दिया। इसने पूरी तरह से काम किया। यह मुझे विश्वास दिलाता है कि टर्मिनल आवेदन समस्या नहीं है। मैं OS X Yosemite संस्करण 10.10.1 के साथ मैकबुक प्रो (रेटिना, 15-इंच, लेट 2013) पर हूं

क्या चल रहा है और मैं इसे कैसे ठीक कर सकता हूं?

जवाबों:


21

के लिए -xविकल्प का उपयोग करके statआपको समान आउटपुट देना चाहिए:

$ stat -x foo
  File: "foo"
  Size: 0            FileType: Regular File
  Mode: (0644/-rw-r--r--)         Uid: (  501/   Tyilo)  Gid: (    0/   wheel)
Device: 1,4   Inode: 8626874    Links: 1
Access: Mon Dec 22 06:17:54 2014
Modify: Mon Dec 22 06:17:54 2014
Change: Mon Dec 22 06:17:54 2014

इसे डिफ़ॉल्ट बनाने के लिए, आप एक उपनाम बना सकते हैं और इसे इसमें सहेज सकते हैं ~/.bashrc:

alias stat="stat -x"

Zsh पर, किसी कारण statसे वास्तविक स्टेट कमांड में एक शेल-निर्मित और मास्क होता है। किसी भी विचार यह कैसे निष्क्रिय करने के लिए? (मेरे पास मेरे macOS पर GNU कोरुटिल्स स्थापित हैं, लेकिन zsh मुझे इसका उपयोग करने से रोकता है)।
अहमत अल्फ़ बाल्कन

9

statआदेश है कि आप "इंटरनेट पर हर कोई" से देखा से एक है GNU coreutils , पर गैर एम्बेडेड लिनक्स और Cygwin पाया जाता है। यह बिजीबॉक्स से भी हो सकता है , जो आमतौर पर एम्बेडेड लिनक्स पर पाया जाता है। OSX की एक अलग statउपयोगिता है ( FreeBSD / NetBSD / OpenBSD से एक), एक समान उद्देश्य के साथ लेकिन विभिन्न विकल्पों और एक अलग आउटपुट स्वरूप के साथ।

statआदेश मानकीकृत नहीं है, तो आप पर सभी यूनिक्स वेरिएंट समान व्यवहार के लिए यह उम्मीद नहीं कर सकते। व्यवहार में, बीएसडी स्टेट और लिनक्स स्टेट है, और कई अन्य वेरिएंट में statकमांड नहीं है ।


3
ध्यान दें कि कोई भी नहीं है Linux stat(जब तक कि आप Linuxस्टेट () सिस्टम कॉल को संदर्भित नहीं कर रहे हैं , statजीएनयू कोरुटिल्स से सिर्फ जीएनयू ।
स्टीफन चेजलस

IRIX statमें GNU या BSD वालों से पहले एक कमांड थी । जीएनयू और बीएसडी वालों से पहले zshएक statबिल्टिन लंबा (हालांकि उतना लंबा नहीं) था।
स्टीफन चेजलस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.