public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Eliot Moss <moss@cs.umass.edu>
To: cygwin@cygwin.com
Subject: Re: Exclude System entries with "ls" or "find"
Date: Tue, 18 Dec 2018 15:51:00 -0000	[thread overview]
Message-ID: <177791e4-5933-a0f0-341c-75b8b19437ea@cs.umass.edu> (raw)
In-Reply-To: <20181218081347.GD28727@calimero.vinschen.de>

On 12/18/2018 3:13 AM, Corinna Vinschen wrote:

>> as can be seen, Command Prompt has a way to exclude System items. Does Cygwin
>> have some way to do this, perhaps with "ls" or "find"?
> 
> You're asking POSIX tools to recognize DOS attributes...

True; expanding on Corinna's response slightly.  I used "touch" to create a file.
I looked at its Windows access control information with icacls.  I then used
Windows attrib to set the SYS attribute and looked at the ACL again with icacls.
There was no difference.  The reason this is relevant is that the information
printed by (e.g., ls -l) is based on a mapping Cygwin provides from Windows
ACLs to POSIX permissions and ACLs.  (That mapping is *not* one-to-one, because
the models are substantially different, but Cygwin does what it can, and its
mapping has been refined over time to something that seems most useful, but
that can sometimes have its pitfalls if you don't use it carefully.)

The reason I mention the above was to demonstrate something that I already
knew: the Windows attribute bits are orthogonal to (distinct from) permissions /
access related information.  While access information has an analog in POSIX,
the attribute bits do not.  So Cygwin tools don't look at / display them, while
that *do* map access control, date/time stamps, etc., as well as they can.

However, you can run DOS attrib from Cygwin, just like any Windows program,
and parse its output.  So it would be possible to use a combination of Windows
and Cygwin tools to do what you're seeking, though not necessarily with high
efficiency, etc.

Regards - Eliot Moss

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

  reply	other threads:[~2018-12-18 12:58 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-18  8:13 Steven Penny
2018-12-18 12:58 ` Corinna Vinschen
2018-12-18 15:51   ` Eliot Moss [this message]
2018-12-18 16:19     ` cyg Simple
2018-12-19  1:10       ` Eliot Moss
2018-12-19 10:06   ` Brian Inglis
2018-12-19 12:20     ` Corinna Vinschen
2018-12-19 12:53       ` Andrey Repin
2018-12-19 13:37         ` Eliot Moss
2018-12-19 14:50           ` Corinna Vinschen
2018-12-19 15:19             ` Andrey Repin
2018-12-19 18:25               ` Corinna Vinschen
2018-12-19 20:57               ` Brian Inglis

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=177791e4-5933-a0f0-341c-75b8b19437ea@cs.umass.edu \
    --to=moss@cs.umass.edu \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).